我有一个网格存储,我可以使用
获取修改后的数据 var modifiedData = store.getModifiedData();
现在我想要删除记录(我正在使用ExtJs 3)。
我尝试使用var deletedData = store.getRemovedRecords();
,但我猜这个属性在ExtJs 4中可用。
我只想获取从网格中删除的记录。 任何帮助将不胜感激。
答案 0 :(得分:6)
默认情况下,这是不可能的。
ExtJS 3.x只能跟踪修改过的记录(开箱即用)。删除(删除)的记录将被完全删除。但是你可以做一件事;商店将为每个记录触发remove事件,并将记录本身作为第二个参数。您可以使用它来创建自己的已删除记录数组。我猜这个实现非常简单。您可以按实例执行此操作,也可以通过扩展创建全新的商店类型。但我想这里并不需要后者。
这是一个例子。请注意,您可能需要处理其他事件以清除removedList。
var myStore = new Ext.data.Store({
removedList: [],
listeners: {
clear: function(store) {
store.removedList = [];
},
load: function(store) {
store.removedList = [];
},
remove: function(store, record, index) {
store.removedList.push(record);
}
}
});
答案 1 :(得分:-1)