0
通過下面這個例子http://dev.sencha.com/deploy/ext-4.1.0-gpl/examples/form/forum-search.htmlExtJS的 - 自動完成過濾器2點的屬性
我可以申請我的組合框的自動完成功能,使用PHP/PostgreSQL的查詢檢索名字則:
{
xtype: 'combo',
store: ds,
hideTrigger:true,
typeAhead: false,
id: 'search_input_text',
width: 187,
queryMode: 'remote',
hideLabel: true,
queryParam: 'query',
displayField: 'first_name',
valueField: 'first_name',
listConfig: {
loadingText: 'Loading...',
getInnerTpl: function() {
return '{first_name}';
}}
listeners: {
buffer: 50,
change: function() {
var store = this.store;
store.clearFilter();
store.filter({
property: 'first_name',
anyMatch: true,
value : this.getValue()
});
}
}
}
現在,我需要編輯它以讓用戶輸入學生的名字或姓氏,然後輸入的每個姓名(第一個或最後一個)將顯示在組合框中。
所以,我編輯的查詢,使之檢索名稱:
SELECT first_name, last_name FROM students WHERE first_name ILIKE '%$query%' OR last_name ILIKE '%$query%' ";
和:
displayField: 'first_name'+'last_name',
valueField: 'first_name'+'last_name',
return '{first_name}'+'{last_name}';
store.filter({
property: 'first_name',
anyMatch: true,
value : this.getValue()
},
{
property: 'last_name',
anyMatch: true,
value : this.getValue()
}
,但是,它仍然RETR
store.filter({
property: 'last_name',
anyMatch: true,
value : this.getValue()
});
它工作得很好,只有姓氏:按什麼用戶類型, 需要注意的是,如果我用這個單獨ieves唯一名字。