setValue()没有在combox字段-EXTJS中存储正确的值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了setValue()没有在combox字段-EXTJS中存储正确的值相关的知识,希望对你有一定的参考价值。

我想动态设置一个值,

 $cls.superclass.constructor.call(this, Ext.apply({

              autoHeight: true,
              items: [
                this.combo = new Ext.form.ComboBox({
                  width: 75,
                  emptyText: $L('Select...'),
                  mode: 'local',
                  displayField : 'title',
                  valueField: 'key',
                  triggerAction: 'all',
                  store: new Ext.data.ArrayStore({
                       fields: ['key', 'title'],
                       data: [
                         ["titletest","Title"],
                         ["nametest","Name"]]
                   }),
                   listeners: {
 'select': function(){
  this.show();
},
scope: this
}
                })]



    },cfg));

我做:

show: function(fld) {
  this.combo.setValue(fld.value);
}

fld.value将值设置为“nametest”或“titletest”而不是“Title”或“Name”

如何解决这个问题?谢谢!

答案

数据定义应该是这样使用键,如在定义的字段中'

fields: ['key', 'title'],
    data : [
            {"key":"titletest", "title":"Title"},
            {"key":"nametest", "title":"Name"}
    ]

以上是关于setValue()没有在combox字段-EXTJS中存储正确的值的主要内容,如果未能解决你的问题,请参考以下文章

extjs的multiselect怎么setvalue

extjs.net Combox赋值

extjs 如何获取combox下拉框中选中的值

c#中我想在combox里绑定数据库中某字段的内容,并显示在combox的下拉框中,请问大家该怎么去弄呢?

如何在 extjs 3.2 中设置值

formbuilder 的 patchvalue 或 setvalue 不会将字段标记为脏或已触及