我对Extjs远程过滤器有一个问题,我认为你可以帮忙澄清一下。
我创建了一个带有远程过滤器的网格,但是如果我更新了网格信息,过滤器会保留以前加载的数据。
我已经尝试了所有内容: store.doDestroy , store.removeAll ,甚至将新商店分配给具有Ex的var 。创造,但我没有成功。
我创建了Fiddle来尝试重现我的问题:
我需要重置'以前的商店负载。
注意:
答案 0 :(得分:1)
您只需要为每个列“重新绑定”过滤器,如下所示:
var grid = this.up('grid');
//Clear the current filters before changing
grid.getPlugins()[0].clearFilters();
var store = grid.getStore();
setStoreFilter(store, 'Van Houten');
//Setting the store filters is not enough
setStoreFilter(filterStore, 'Van Houten');
setStoreFilter(hobbiesStore, 'Van Houten');
//You need to "rebind" the store, it needs a little delay to work properly
setTimeout(function(){ grid.getColumns()[3].filter.bindMenuStore(hobbiesStore); }, 1000);
以下是更新后的FIDDLE