【发布时间】:2013-10-25 15:36:27
【问题描述】:
现在我有 2 个网格面板。我想使用getselectionmodel() 选择第一个网格的一些记录,然后将选定的记录加载到第二个网格并重新创建一个新网格。
有什么方法可以将选定的记录加载到第二个网格存储中?
我正在使用 extjs3
【问题讨论】:
标签: javascript extjs
现在我有 2 个网格面板。我想使用getselectionmodel() 选择第一个网格的一些记录,然后将选定的记录加载到第二个网格并重新创建一个新网格。
有什么方法可以将选定的记录加载到第二个网格存储中?
我正在使用 extjs3
【问题讨论】:
标签: javascript extjs
你可以调用[[你的第一个网格]].getSelectionModel().getSelections(),它会返回一个记录数组
那么你需要将这个记录数组转换为第二个数组,我们称之为数据,第二个存储的读取器可以读取。
假设您的第二个存储是 Ext.data.ArrayStore
var store2 = new Ext.data.ArrayStore({
fields: [ { name: 'field1' }, { name: 'field2' } ]
});
您的转换功能将是
function convert(records){
var record;
var data = [];
for (var i = 0; i < records.length; i++) {
record = records[i];
data.push([record.get('your field'), record.get('another field')]);
}
return data;
}
然后在第二个网格上你可以调用 .getStore().loadData(data)
【讨论】: