要过滤一个网格列,我们可以使用:
{
xtype: 'button',
text:'Search',
handler:function(){
store.clearFilter();
var searchValue = Ext.getCmp("textFieldId").getValue();
store.load().filter('GridFieldName', searchValue);
}
}
但如何一次搜索多个字段,例如:
{
xtype: 'button',
text:'Search',
handler:function(){
store.clearFilter();
var searchValue = Ext.getCmp("textFieldId").getValue();
store.filter([
{property: "GridFieldName", value: searchValue},
{property: "GridFieldName1", value: searchValue}
]);
}
}
有任何想法吗?
EDIT:
奇怪的是,在这两种情况下,只有单个搜索有效:
这有效:
store.filter([
{ property: "FirstName", value: searchValue }
]);
这有效:
var FirstNameFilter = new Ext.util.Filter({
property: "FirstName", value: searchValue
});
store.filter(FirstNameFilter);
但这并没有:
store.filter([
{ property: "FirstName", value: searchValue },
{ property: "LastName", value: searchValue }
]);
或者这样做:
var filters = [
new Ext.util.Filter({
property: "FirstName", value: searchValue
}),
new Ext.util.Filter({
property: "LastName", value: searchValue
})
];
store.filter(filters);