You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

UI Grid自定义筛选行无法取消选中问题求助

UI Grid多列自定义筛选重置时清除选中行的解决办法

在UI Grid多列自定义筛选场景中,点击「重置所有筛选」按钮时,筛选条件能正常重置,但筛选弹窗内的选中行仍保持选中状态。已知单独清除单个筛选选中行可使用代码:

$scope.gridPopupApi.selection.clearSelectedRows();

要实现批量清除所有筛选弹窗的选中行,可按以下方式处理:

  • 遍历Grid的所有列,针对每个启用自定义筛选的列,调用其弹窗API的清除选中行方法:
    // 遍历所有列
    angular.forEach($scope.gridApi.grid.columns, function(column) {
      // 检查列是否存在自定义筛选弹窗API
      if (column.filters[0] && column.filters[0].gridPopupApi) {
        // 清除该筛选弹窗的选中行
        column.filters[0].gridPopupApi.selection.clearSelectedRows();
      }
    });
    
  • 将上述代码添加到「重置所有筛选」按钮的点击事件逻辑中,与筛选条件重置的代码同步执行。

注意事项

  • 需确保每个自定义筛选弹窗的gridPopupApi已正确绑定到对应列的filter对象上(遵循UI Grid自定义筛选的弹窗API绑定规范)
  • 若筛选选项为异步加载,需保证弹窗初始化完成后再调用清除方法

内容的提问来源于stack exchange,提问作者user1259318

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 10:25:38