#extjs
#extjs
Вопрос:
Следующий пример показывает обычный combobox, пока я не использую XTemplate
. После применения XTemplate
элементы со списком становятся недоступными (не выделяются при наведении курсора мыши и не выбираются щелчком мыши).
Ext.onReady(function () {
var states = Ext.create('Ext.data.Store', {
fields: ['abbr', 'name'],
data: [
{ "abbr": "AL", "name": "Alabama" },
{ "abbr": "AK", "name": "Alaska" },
{ "abbr": "AZ", "name": "Arizona" }
]
});
Ext.create('Ext.form.ComboBox', {
fieldLabel: 'Choose State',
store: states,
queryMode: 'local',
displayField: 'name',
valueField: 'abbr',
renderTo: 'divId',
tpl: new Ext.XTemplate(
'<tpl for="."><div class="x-combo-list-item">{name}</div></tpl>')
});
}
Ответ №1:
По умолчанию XTemplate
для ComboBox:
'<tpl for="."><div class="x-combo-list-item">{' this.displayField '}</div></tpl>'
Вы уже установили displayField
имя to, так зачем вам нужен пользовательский шаблон?
Ответ №2:
new Ext.Xtemplate
Значение in не требуется tpl
. Просто определите в нем строку шаблона.