Загрузить значение по умолчанию для comboBox extjs - PullRequest
6 голосов
/ 16 августа 2010

как я могу загрузить значение по умолчанию из моего json store (remote) в комбинированный список, я попытался загрузить магазин, прежде чем сделать комбо, и использовать setValue () я хочу чтобы мой комбо отображал первый результат в магазине Пожалуйста, скажите мне правильный способ сделать это и спасибо

1 Ответ

14 голосов
/ 16 августа 2010

Вам необходимо установить для свойства value значение первого элемента после загрузки хранилища

Ext.ns('MyNamespace');

MyNamespace.MyComboBox = Ext.extend(Ext.form.ComboBox, {
  displayField: 'displayValue',
  triggerAction: 'all',
  valueField: 'ID',

  initComponent: function () {
    this.store = new Ext.data.JsonStore({
      url: 'url',
      baseParams: {
        //params
      },
      fields: [
        {name:'ID', mapping: 'ID', type: 'int'},
        {name:'displayValue', mapping: 'displayValue', type: 'string'},
      ],
      root: 'root'
    });

    var me = this;
    this.store.on('load',function(store) {
      me.setValue(store.getAt(0).get('ID'));
    })

    MyNamespace.MyComboBox.superclass.initComponent.call(this);

    this.store.load();
  }

});
...