Как автоматически выбрать (показать) первое значение combobox в Ext Js?
Это мой combobox
{
xtype: 'combo',
fieldLabel: LANG.LOGIN_LANG,
id : 'lang',
store: [
['tr','Türkçe'],
['ru','Русский'],
['en','English']
],
mode: 'local',
triggerAction: 'all',
selectOnFocus:true
},
5 ответов
{
xtype: 'combo',
fieldLabel: LANG.LOGIN_LANG,
id : 'lang',
store:[['tr','Türkçe'],['ru','Русский'],['en','English']],
mode: 'local',
triggerAction: 'all',
value: 'tr',
selectOnFocus:true
},
для удаленных comboboxes вам нужно подключить к магазину load
событие для выбора значения после загрузки хранилища.
обычно, когда я хочу выбрать первое значение магазина, я использую следующие методы:
xtype: 'combo',
fieldLabel: 'prov',
id : 'lang',
store:[['tr','Türkçe'],['ru','Русский'],['en','English']],
mode: 'local',
triggerAction: 'all',
selectOnFocus:true,
listeners: {
afterrender: function(combo) {
var recordSelected = combo.getStore().getAt(0);
combo.setValue(recordSelected.get('field1'));
}
}
вы можете использовать свойство value вот так:
value : 'tr'
затем по умолчанию будет отображаться первое значение.
вы можете использовать этот код, присваивая любому элементу хранилища после его идентификатора значение combobox по умолчанию.
{
xtype: 'combobox',
forceSelection: true,
allowBlank: true,
typeAhead: true,
queryMode: 'local',
colspan: 3,
id: 'filter_column_c',
style: {'margin': '5px 15px 15px 30px'},
fieldLabel: 'Column',
valueField: 'column',
displayField: 'name',
store: nomStores["storeCombo"],
value: nomStores["storeCombo"].getById(1),
},
в качестве альтернативы я столкнулся с необходимостью показать локально сохраненный магазин, который был просто вопросом прослушивания метода afterRender:
listeners: {
afterRender: function() {
this.select(01);
}
}
01
в этом случае является id (valueField) элемента в хранилище:
areasCenters: {
data: [{
id: 01,
name: 'Todas'
},
{
id: 02,
name: 'Elegir...'
}
],
autoLoad: true
}