3

在组合编辑器中,选择一个选项后,即使我设置了显示字段,它也会显示值。一旦我单击组合编辑器,它也会显示 displayField,但是在选择并单击其他(这意味着鼠标移出)之后,单元格值更改为 valueField。

我的组合编辑器代码,

{
   xtype : 'combo',
   editable : false,
   triggerAction : 'all',
   displayField : 'name',
   valueField : 'id',
   store : myStore
}

我错过了什么?

有知道的请指教~

谢谢!

[编辑]

我在这里写测试代码:

http://jsfiddle.net/ilovekanon/NQXw9/

更改名称并单击其他名称,然后名称将显示 ID,而不是名称 :(

4

2 回答 2

2

您需要在model组合中添加一个(或模型配置)store,然后调用.setValue()

combo.store.add({id:3, name:'expert wanna-be'});
combo.setValue(3);

例子:

http://jsfiddle.net/y944g/

当您加载组合的商店(通过单击触发器)时,模型将被覆盖,因此您不必担心重复或任何事情。

于 2012-07-30T20:24:25.150 回答
1

您的 jsFiddle 代码没有错。

displayFieldin combo 表示组合中显示的数据字段名称。它不在网格中显示值。当在组合中选择选项时,网格显示选择的值。如果你想name在combo的商店中展示,valueField必须设置'name',

因此,如果您需要在组合商店中标识,您可以设置新的隐藏网格列。当更改事件触发。

于 2012-07-31T11:07:20.620 回答