plugin como solución
- Código: Seleccionar todo
Ext.namespace('Ext.ux.plugins');
/**
* Ext.ux.plugins.BlankRowCombo plugin for Ext.form.Combobox
*
* @author Lopez Sebastian Oscar
* @date 2009.03.31
*
* @class Ext.ux.plugins.BlankRowCombo
* @extends Ext.util.Observable
*
* @Comments
* Este plugin sirve para que los valores en blanco de un combo tenga la altura de los demas.
*/
Ext.ux.plugins.BlankRowCombo = function(config) {
Ext.apply(this, config);
};
Ext.extend(Ext.ux.plugins.BlankRowCombo, Ext.util.Observable, {
init:function(combo) {
Ext.apply(combo, {
tpl: new Ext.XTemplate(
'<tpl for=".">'
+ '<div class="x-combo-list-item ux-icon-combo-item">'
+ '<tpl if="this.isEmpty(' + combo.displayField + ') == false">'
+ '{' + combo.displayField + '}'
+ '</tpl>'
+ '<tpl if="this.isEmpty(' + combo.displayField + ')">'
+ '<span style="color:#FFFFFF">.</span>'
+ '</tpl>'
+ '</div></tpl>',
{
isEmpty: function(value){
return value == '';
}
})
});
}
});
para usarlo es simple
- Código: Seleccionar todo
var combo = new Ext.form.ComboBox({
store: store,
displayField:'sucursal',
...
[color=red]plugins: new Ext.ux.plugins.BlankRowCombo()[/color]
});
Nota: Sí alguien tiene quiere puede mejorarlo, sí en lugar de esta linea '.' se reemplaza el color blanco por el color real del texto del combo, porque tal vez alguien utilize combos de distintos colores.


