gpt4 book ai didi

extjs - 如何重置 Extjs Grids 中的所有过滤器?

转载 作者:行者123 更新时间:2023-12-04 10:04:05 24 4
gpt4 key购买 nike

如何在网格中重置 ExtJS 过滤器。更具体地说,我如何获取标题以兑现对过滤的更改。

IE。这工作正常:

grid.store.clearFilter();

但是标题渲染都是错误的。我需要进入所有菜单对象并取消选中复选框。

我越来越迷失了。我很确定这给了我 filterItems :
var filterItems = grid.filters.filters.items;

从这些过滤器项中的每一个,我都可以访问菜单项,如下所示:
var menuItems = filter.menu.items;

但这是我所能得到的。我期待菜单项内有某种复选框对象,然后我可以取消选中该复选框,希望标题呈现会发生变化。

更新:

我现在有这个代码。网格存储已清除其过滤器。接下来我从 获取 filterItems grid.filters.filters.items 并迭代它们。然后我在每个菜单项上调用一个函数。
    grid.store.clearFilter();

var filterItems = grid.filters.filters.items;

for (var i = 0; i<filterItems.length; i++){

var filter = filterItems[i];

filter.menu.items.each(function(checkbox) {

if (checkbox.setChecked)
checkbox.setChecked(false, true);
});
}

复选框确实被调用,但仍然没有发生任何事情:(

最佳答案

试试这个代码:

grid.filters.clearFilters();

这应该兼顾网格及其底层存储。

当你做
 grid.store.clearFilter();

它只能清除商店上的过滤器,但网格的 View 不会随着该调用而更新。因此,要为网格的 View 和网格的存储自动处理它,只需使用
grid.filters.clearFilters();

希望能帮助到你!

干杯!

关于extjs - 如何重置 Extjs Grids 中的所有过滤器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24614012/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com