我有一种奇怪的情况。我有多个过滤器应用于同一商店LOCALLY。但只要有新值,我就必须更新特定的过滤器(删除,创建或更新)。 因此我不能使用store.clearFilter,因为它清除了一切。
我试过
store.filters.removeAtKey(prop);
store.filters.add(prop, new Ext.util.Filter({
property: prop,
value: event.value
}));
没有运气。
任何帮助表示赞赏
Tharahan
答案 0 :(得分:0)
您不应该使用商店的removeFilter
方法吗?
// false prevents useless update until you've added the new filter
store.removeFilter(prop, false);
答案 1 :(得分:0)
你可以在清理之前获得所有过滤器:
<强> store.filters 强>
var filtersAux = [];
// get filter
Ext.Array.each(store.filters.items,function(element,pos,array){
// if Not (filter to remove)
filtersAux.push(element);
});
// remove all filters
store.clearFilter();
// add the filters:
Ext.Array.each(filtersAux,function(element,pos,array){
store.filter(element.property,element.value);
});
它对我来说很完美。