我在我的应用程序中使用 ExtJs,并且我有一个具有唯一列的网格。此列有一个编辑器,它是一个组合框,因此当我单击网格单元格时,会显示一个组合框。但是,当我单击以编辑网格单元格值时,我的对象的名称是可见的,但是当我在单元格外部单击时,在我的网格中呈现的值是对象的 id。
当我选择项目时:
当我在组合框外单击时:
我的代码:
Ext.define('ComboBoxDoenca', {
extend : 'Ext.form.ComboBox',
displayField: 'nome',
editable: false,
width: 300,
valueField: 'id',
listeners:{
render: function(combo){
combo.store = Ext.create('ComboStore').load();
}
}
});
网格代码:
Ext.define('GridDoenca', {
extend : 'Ext.grid.Panel',
title: 'Doenças',
alias : 'widget.doencaList',
id: 'gridDoenca',
height: 150,
plugins: [Ext.create('Ext.grid.plugin.CellEditing', {
clicksToEdit: 1
})],
initComponent : function() {
var comboDoenca = Ext.create('Hemisphere.view.fungicida.ComboBoxDoenca');
me = this;
Ext.apply(this, {
dockedItems : [ {
xtype : 'toolbar',
dock : 'top',
items : [ {
text : 'Add Doença',
icon : Webapp.icon('add1.png'),
iconAlign : 'top',
action : 'addDoenca'
}]
} ]
});
this.columns = [ {
header : 'ID',
dataIndex : 'id',
hidden: true
},{
header : 'Doença',
dataIndex : 'id',
editor: comboDoenca,
flex: 1
}];
this.callParent(arguments);
}
});
任何人都可以帮助我吗?