我创建了一个过滤器并将其添加到我的商店
checkchange: function(item, checked) {
if (checked) {
Ext.getCmp('gridPanel').getStore().removeFilter(item.filter);
} else {
Ext.getCmp('gridPanel').getStore().addFilter(item.filter);
}
}
addFilter()以我想要的方式工作,但removeFilter()不执行任何操作。 clearFilter()也可以,但我想只删除一个过滤器,而不是所有过滤器。
答案 0 :(得分:0)
这不起作用,您已通过精确过滤器对象从商店中删除过滤器
var store = Ext.getCmp(' gridPanel')。getStore();
store.removeFilter(store.filters.items [0]);
Extjs Doc声明:
使用。从当前过滤器集中删除单个过滤器 传递过滤器/过滤器ID,默认情况下,应用更新的过滤器集 到商店的未经过滤的数据集。
请参阅link。