我有一个示例fiddle,其中我使用Ext.window.Window
编辑网格条目。
值的id显示在网格本身中,在编辑窗口中为空。
对于网格中的组合框,我做到了并且有效
{
text : 'type',
dataIndex : 'type',
flex: 1,
renderer: function (v, p, record) {
return record.get('type');
},
},
对于表单编辑中的组合框,我添加到了组合框listeners:{ render: function(combo)}
{
xtype: 'combobox',
store: {
type: 'type-store'
},
fieldLabel: 'Type',
displayField: 'name',
valueField: 'id',
queryMode: 'remote',
publishes: 'name',
name: 'name',
listeners:{
'render': function(combo){
console.log(combo);
combo.setValue();//How set current value
}
}
但是我不明白如何正确设置当前值?
谢谢
答案 0 :(得分:1)
首先,为了链接组合的值,您的数据data.json必须包含“类型”的ID,而不仅仅是描述:
{
"id": 1, "id_type":3 , "type": "Третий", "mytextfield": "Текстовое значение"
},
如果需要,您实际上可以使用“名称”,但是您还必须将组合valueField更改为“名称”。
在控制器中,首先加载组合存储(或自动加载),然后使用窗体来加载记录,而不是使用Windows的view_model:
console.log(wind.lookup("mycombo").getStore().load());
wind.down('form').loadRecord(record);
我通过这些更改修改了您的 fiddle