我有这个代码允许我在一个列上过滤我的商店:
var events_ds = new Ext.data.JsonStore({
autoLoad: true,
autoDestroy: true,
url: '<% $base %>json/events/<% $eventWWN %>.json',
storeId: 'events_ds',
idProperty: 'id',
fields: [ 'id', 'precedence', 'affectedWWN', 'eventType', 'color', 'CollectTime' ],
listeners:
{ 'load': function(store) {
store.filter( 'color', $_GET['color'] )
}
}
});
现在,我想要过滤多个列。
我正在考虑将'听众'行更改为此但它正在运行,我没有看到另一个我可以使用多个过滤器的示例 - 有任何建议吗?
listeners:
{ 'load': function(store) {
store.filter( 'color', $_GET['color'] ),
store.filter( 'priority', $_GET['priority'] )
}
}
更新:这是 ExtJs 3.4
答案 0 :(得分:0)
如果您在发布的代码中使用过滤器,则会获得逻辑AND
操作。如果你需要更复杂的东西,你可以简单地创建一个这样的过滤函数:
store.filter(Ext.create('Ext.util.Filter', {
filterFn: function(item) {
return item.get('color') == 'RED' || item.get('priority') == 'low';
},
}))