我有一个网格:
Ext.create('Ext.grid.Panel', {
id: 'grid',
store: this.store,
columns: [{
dataIndex: 'a'
},{
dataIndex: 'b'
},{
dataIndex: 'c'
}],
selModel: {
selType: 'cellmodel'
},
plugins: [cellEditing]
})
其中使用 cellEditting:
var cellEditing = Ext.create('Ext.grid.plugin.CellEditing', {
clicksToEdit: 1,
listeners: {
beforeedit: function(obj) {
// Something goes here?
}
}
});
现在,有“添加行”到网格的按钮,因此记录可能是新的或旧的。
- 如果将新行添加到商店/面板中,我需要列
b
并且c
可以编辑。 - 如果用户试图编辑在创建面板时简单地从数据库加载的现有行,我只需要
c
可编辑列。
我怀疑我需要向beforeedit
侦听器添加一些东西,但是我对 ExtJS 和 javascript 一般是新手,所以我不知道如何描述这些条件。