У меня возникли проблемы с фильтрацией comboxbox на typeahead, когда я ввожу нужное значение, которое я хочу, комбо подсвечивает значение правильно, но оно не фильтрует хранилище. Магазин перезагружается до исходных данных даже после ввода некоторого текста в поле со списком.Extjs Combobox store не фильтрует значения на typeahead
Вот мой код для магазина.
Ext.define('Dashboard.store.Rule', {
extend: 'Ext.data.Store',
model: 'Dashboard.model.Rule',
storeId : 'Rule',
pageSize: 35,
autoSync : false,
autoLoad: true,
remoteFilter: true,
sorters : ['ruleName'],
proxy: {
type: 'ajax',
api: {
read : 'rule/view.action',
create : 'rule/create.action',
update: 'rule/update.action',
destroy: ''
},
reader: { //reads the data in the JSON Format
type: 'json',
root: 'data',
successProperty: 'success'
},
writer: {
type: 'json', //writes the data in the JSON Format
writeAllFields: true,
encode: true,
root: 'data'
},
listeners: { //Exception Handler for the Ajax Request
exception: function(proxy, response, operation){
var error = Ext.decode(response.responseText);
Ext.MessageBox.show({
title: 'REMOTE EXCEPTION',
msg: error.message,
icon: Ext.MessageBox.ERROR,
buttons: Ext.Msg.OK
});
}
}
}
});
А ниже мой код для выпадающего списка в связи
xtype: 'combobox',
id : 'ruleName',
padding : '10 30 10 20',
fieldLabel: '<html><font color = "red">*</font></html>Rule Name',
store: 'Rule',
width: screen.width*0.22,
emptyText: 'Select Rule',
typeAhead : true,
allowBlank: false,
queryMode: 'remote',
lastQuery:'',
displayField: 'ruleName',
disabled : true,
maxLength: 100,
maxLengthText: 'Maximum text size allowed 100',
listeners : {
'change' : function(){
//TODO
},
'blur' : function(){
//TODO
}
}
Я также попытался положить triggerAction : 'all'
, но до сих пор ничего не работает.
Пожалуйста помощь по этому вопросу
Большое спасибо
Поскольку вы активировали remoteFilter, ваш фильтр должен быть на сервере. Я бы предположил, что вы не реализовали какой-либо фильтр на сервере, не так ли? – Alexander
Да Александр Я не внедряю remoteFilter, но onload Я привожу все данные с сервера. Но я не могу понять, почему он запускает запрос ajax с каждым символом, который я печатаю. Мне не хватает какого-либо свойства конфигурации, которое является обязательным для этой ситуации. Просьба помочь .. –
Вы сказали ему ** явно ** использовать такое поведение, указав 'remoteFilter: true'. – Alexander