Вы установили valuefield : 'field_id'
, но в магазине fields
,
{
xtype : 'combo',
fieldLabel : 'Select Field',
displayField : 'field_name',
valueField : 'field_id', //This 'field_id' must be in store fields too.
id : 'fields_combo_id',
store: new Ext.data.JsonStore({
proxy : new Ext.data.HttpProxy({url:eyefind.config.DATA_RETRIEVAL, method:'GET'}),
baseParams: { subject: 'fields' },
root: 'data',
id: 'field_id', //This id is just for the store, not the record data.
fields: ['field_id','field_name'], // here, i add `field_id`
autoload: true // This should be autoLoad, remember JavaScript is case sensitive.
}),
labelStyle : 'font-weight:bold; width:100px',
triggerAction : 'all',
clearFilterOnReset : false,
mode : 'local'
}
нет field_id
А также, почему вы устанавливаете autoLoad : true
, если вы снова загружаете его в свою внешнюю функцию?
РЕДАКТИРОВАТЬ
Когда я запускаю comboFields.setValue(id);
, в котором мой идентификатор присваивается одному из идентификаторов полей, он работает, и я вижу поле отображения в своем комбо (не нужно сначала выпадать).Но, если в вашем случае ваш комбо-элемент выделен, я думаю, это из-за версии.К сожалению, я проверял это в Ext 3.3.0.