【问题标题】:ag-grid hide rows with select all checkbox only works on filtered items带有全选复选框的 ag-grid 隐藏行仅适用于过滤的项目
【发布时间】:2020-05-31 12:11:57
【问题描述】:

我在我的 Angular 项目中使用 ag-grid。我的一个专栏使用复选框进行过滤,并有一个搜索栏和一个全选复选框。当您在搜索某些内容时取消选中全选框时,只会取消选择与搜索词匹配的项目,而不是所有内容。

这个问题已经在 github 上提出:https://github.com/ag-grid/ag-grid/issues/1559。 在这里,给出了将 selectAllOnminiFilter 设置为 false 的答案。但是,在 ag-grid 的更新日志中,它说 selectAllOnMiniFilter 属性已被删除:https://www.ag-grid.com/ag-grid-changelog/ (key: AG-3383)

有没有办法在没有 selectAllOnminiFilter 属性的情况下获得这种行为?

【问题讨论】:

    标签: angular ag-grid ag-grid-angular


    【解决方案1】:

    您应该能够使用

    获取所有节点
    forEachNode((node, index))  
    

    然后取消选中该节点。

    你可以用下面的方法做到这一点

    gridApi.forEachNode(node => node.setSelected(false));
    

    根据documentation,这不会忽略任何排序或过滤的节点。

    遍历网格中的每个节点(行)并调用回调 对于每个节点。这类似于 a 上的“forEach”方法 Javascript 数组。这对每个节点都调用,忽略任何 在网格内应用过滤或排序。如果使用无限行 模型,然后为页面缓存中加载的每个页面调用。

    【讨论】:

    • 我的问题不在于选择行,而是在未选中全选复选框时隐藏所有行。
    猜你喜欢
    • 2023-03-27
    • 2020-06-22
    • 2018-04-27
    • 2016-09-26
    • 2018-02-06
    • 1970-01-01
    • 1970-01-01
    • 2016-01-21
    • 2018-06-03
    相关资源
    最近更新 更多