2012-06-10 3 views
0

Я новичок в Extjs. Я столкнулся с этой проблемой, когда пытаюсь использовать combobox с хранилищем, заполненным вызовом AJAX. Я хочу, чтобы отобразить выпадающий элемент, который начинается с введенного символа в поле со списком, но выпадающий всегда показывая 1-ый пункт в list.Here мой код,Поле со списком Extjs всегда показывает первый выбранный элемент

Ext.define('fieldModel', { 
     extend : 'Ext.data.Model', 
     fields : [ { 
      name : 'name' 
     },{ 
      name : 'value' 
     }] 
    }); 
    { 
       xtype: 'combobox', 
       id: 'startField', 
       name: 'startField', 
       style: 'margin-right:10px;', 
       width: 230, 
       fieldLabel: 'Field', 
       labelAlign: 'top', 
       displayField: 'name', 
       valueField: 'value', 
       triggerAction:'query', 
       minChars:2, 
       //forceSelection:true, 
       //enableKeyEvents:true, 
       minListWidth:150, 
       //allowBlank:false, 
       queryMode: 'remote', 
       typeAhead: true, 
       //hideTrigger: true, 
       store:new Ext.data.JsonStore({ 
        model: 'fieldModel', 
        //autoLoad: true, 
        //sortOnLoad : true, 
        //sortRoot: 'data', 
        proxy : { 
         type : 'ajax', 
         url: requesturl + '?action=getDate&itemid='+ preItemId, 
         reader : { 
          type : 'json', 
          root : 'data', 
         } 
        }, 
        listeners :{ 
         load : function(store, records, successful, operation, eOpts){ 
          Ext.getCmp('startField').getStore().sort('name', 'ASC'); 
         } 
        } 
       }), 

Пожалуйста, помогите.

Заранее спасибо.

ответ

0

изменить ваш слушатель Keypress или KeyUp событие

нажатие (Ext.form.field.Text это, Ext.EventObject е, eOpts Object)

Это событие срабатывает только если enableKeyEvents устанавливается истина.

listeners :{ 
     keypress : function(text, event, eOpts){ 
      Ext.getCmp('startField').getStore().sort('name', 'ASC'); 
     } 
    } 
Смежные вопросы