extjs从第一个网格中选择记录并将所选内容复制到第二个网格

时间:2013-10-25 15:36:27

标签: javascript extjs

现在我有2个网格面板。我想通过使用getselectionmodel()选择第一个网格的一些记录,并将所选记录加载到第二个网格并重新创建一个新网格。

有没有办法可以将选定的记录加载到第二个网格存储中?

我正在使用extjs3

1 个答案:

答案 0 :(得分:0)

你可以调用[[你的第一个网格]]。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)