2015-08-28 6 views
1

Я новичок в ExtJS. У меня есть комбобокс в ExtJS, и я хочу загрузить первую запись в хранилище в качестве значения по умолчанию для combobox. вот мой кодПолучите определенное значение хранилища данных в ExtJS

var cutoff = store_dynamic('nr/getCutOffDate', true); 
var combo_value = //here i want to store the default value taken in the store 

xtype: 'combobox', 
margin: '0 10 0 0', 
labelWidth: 80, 
width: 240, 
store: cutoff, 
displayField: 'date', 
valueField: 'dt_val', 
fieldLabel: 'Cut-Off Date', 
editable: false, 
id: 'cutoffdate', 
value: combo_value 

Вот данные в магазине

{"success":true,"metaData":{"fields":["date","dt_val"]},"data [{"date":"June 30, 2015","dt_val":"6\ 
/30\/2015"},{"date":"June 15, 2015","dt_val":"6\/15\/2015"}]} 

dt_val то, что отображается в выпадающем списке.

ответ

1

Это было бы очень легко, в общем случае является

var store = combo.getStore(), 
    value = store.getAt(0).get(combo.valueField); 
combo.setValue(value); 

или, в вашем конкретном случае:

combo_value = cutoff.getAt(0).get('dt_val'); 

Но я думаю, что ваш код проблема может возникнуть ситуация, когда магазин не но заполнены данными при инициализации выпадающего списка. Вам было бы лучше сделать это в комбо afterrender и событии load магазина и проверить, установлены ли combo.rendered и store.getCount()>0true, прежде чем вы установите значение комбо.

Смежные вопросы