У меня есть поле со списком.Когда я пытаюсь найти имя, введенное мной значение автоматически исчезает, и поиск не происходит должным образом.Но если я выбираю из выпадающего списка, то он работает правильно.
Проблемы:
- После помещения чего-либо в поле со списком, этоисчезает автоматически.
- Пользователь не может найти имя, вставив первые несколько букв.
- Имя не соответствует приоритету.
Я пробовал typeAhead, но он не работает.
Код:
xtype: 'combobox',
itemId: 'abc_VendorName',
inputId: 'abc_VendorName',
cls: 'FieldLabel',
margin: '0 0 3 0',
fieldLabel: 'Vendor Name:',
labelSeparator: '',
msgTarget: 'side',
displayField: 'namewithSLID',
valueField: 'code',
matchFieldWidth: false,
forceSelection: true,
enableKeyEvents: true,
minChars: 1,
pageSize: 25,
listeners: {
change: 'onVendorNameChange',
blur: 'onVendorNameBlur'
},
Два слушателя -
onVendorNameChange: function (combo, newValue, oldValue, eOpts) {
var me = this;
var view = me.getView();
var viewmodel = me.getViewModel();
if (combo.getValue() > 0) {
var selectedRecord = combo.selection;
if (selectedRecord == null || selectedRecord === undefined) {
return;
}
var alias = selectedRecord.get('abbreviation');
var finslCode = selectedRecord.get('code');
view.down("#dspl_VendorAlias").setValue(alias);
viewmodel.get('theRecord').set('finslAbbreviation', selectedRecord.get('abbreviation'));
viewmodel.get('theRecord').set('finslSLID', selectedRecord.get('slid'));
me.implementVendorItemMarkup(finslCode);
}
},
onVendorNameBlur: function (combo, event, eOpts) {
var me = this;
var view = me.getView();
var viewmodel = me.getViewModel();
if (combo.getValue() == null) {
view.down("#dspl_VendorAlias").setValue(null);
viewmodel.get('theRecord').set('finslAbbreviation', null);
viewmodel.get('theRecord').set('finslSLID', null);
}
},