Как установить Выбор ширины индекса в Combobox на extjs - PullRequest
1 голос
/ 01 ноября 2010

У меня проблема с указанием ширины в индексе выбора для комбинированного списка в extjs.

Мой код указан ниже;

var inventorytbar = [
   {
             xtype: 'combo',
             text: 'Filter Category',
             hiddenName: 'local-states',
             store: storeCat,
             displayField: 'state',
             typeAhead: true,
             mode: 'local',
             triggerAction: 'all',
             autoWidth: true,
             editable:false,
             value: 'All Inventory', 
             selectOnFocus:true,
             boxMaxWidth: 500,

             listeners: 
              {
                  'select': function (combo, record, index) 
                  {
                      var catid = record.get('abbr');
                      selectedComboCat = catid;
                      var catname = record.get('state');
                      var newcatname = catname.replace(/ /g, '');
                      combo.setValue(newcatname);

                  }
              }
         }

1 Ответ

1 голос
/ 01 ноября 2010

Вы должны правильно создать экземпляр ComboBox (в вашем примере вы используете отложенное создание), пропустив бит {xtype = 'combo'} и объявив объект с его полным типом:

var inventorytbar = [
  this.theCombo = new Ext.form.ComboBox({
    // Your config settings
  });
]

Добавьте слушателя, чтобы дождаться выделения, на этом этапе страница будет отображена, поэтому вы можете использовать ComboBox.view.getNode (запись Ext.data.Record) следующим образом:

this.theCombo.on('select', function(combo, record, index) {
  if (combo.view) {
    var node = combo.view.getNode(record);
    if (node && Ext.fly(node)) alert(Ext.fly(node).getWidth());
  }
}); 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...