使用cellediting方式编辑数据的grid在保存数据时,需要进行数据的处理,所以数据处理的方式需要特别注意!
cellEditing 插件的事件
listeners: {
edit: function (editor, e) {
e.grid.getView().refresh();
}
}
editor: {
xtype: 'combobox',
listeners: {
select: function (combo, records, options) {
var record = getCurrentEditRecord()
//这里需要特别注意,采用set的方式修改store中的数据值,不能直接使用record.data.cell_filed_name.value
record.set('cell_filed_name',records[0].data.value)
}
}
在store调用commitChanges()或者rejectChanges()方法之前,使用store.getModifiedRecords()可以取出Store中所有的修改了的数据,如果没有使用set方式修改数据,store.getModifiedRecords()这个方法是无法取到修改的数据的。