我有两个Ext.panel.Grid(让我们称之为" A"和" B") 当我在网格中选择行" A"时,数据加载到网格" B。主要问题是电网" B"是可编辑的,当我在" A"中选择另一条记录时," B"记录遗失:(
控制器中有下一个逻辑
"grid id[A]": {
selectionchange: function(grid, record) {
this.getGridB.getStore().loadData( record.get('options'), false );
}
}
,样本记录为:
{
name: "Item1",
owner: "user1",
options: [
{
value: "345",
name: "option1"
},
{
value: "100500",
name: "option2"
}
]
}
我应该存储更改的值?或者是否还有另外一个"笔直#34;溶液
答案 0 :(得分:0)
LoadData()将数据数据直接加载到Store中。如果数据的格式与其他商店的模型相符,那么我们可以使用此方法直接加载模型对象。如果您希望将数据添加到商店中的现有记录,则必须将append设置为true,默认情况下为false。
store.loadData(data, true);
其中数据:Ext.data.Model [] / Object []
所以它应该是这样的:
listeners: {
selectionchange: function(thisObj, selected, eOpts) {
gridB = Ext.getCmp('gridA');
gridB.getStore().loadData(selected, true);//true to append records
gridB.getView().refresh();
}
},