从单个列中删除所有过滤器 - 制表符
Remove all filters from a single column - tabulator
我已阅读文档,我知道我可以像这样删除过滤器:
table.removeFilter("age", ">", 22);
(假设我的年龄栏上有 >22 的过滤器)。
或像这样从 table 中删除所有过滤器:
table.clearFilter();
但是,如果我只想删除我的年龄列中的过滤器,但我不能确定它们是什么,该怎么办。我有基于下拉列表的过滤器,所以有时我可能没有 22 space。我正在寻找的是这样的东西:
table.clearColumnFilters("age");
或
table.removeFilter("age", ">", *);
(其中 * 是通配符)
我不想删除其他列上的筛选器,因此将整个 table 清空是不好的。
我现在拥有的是针对每个可能的输入值的 removeFilter - 但我的下拉列表将会扩展,我不能只为每个项目添加 removeFilters。
是否有清除所有过滤器的方法?
所以我想出了一个方法来做到这一点:
var allFilters = table.getFilters();
for (var filter = 0; filter< allFilters.length; filter+=1){
if (allFilters[filter]['field'] === "age"){
table.removeFilter("age",allFilters[filter['type'],allFilters[filter]['value']);
}
}
遍历过滤器,如果它与您要“取消过滤”的列匹配,则将其删除。
我已阅读文档,我知道我可以像这样删除过滤器:
table.removeFilter("age", ">", 22);
(假设我的年龄栏上有 >22 的过滤器)。 或像这样从 table 中删除所有过滤器:
table.clearFilter();
但是,如果我只想删除我的年龄列中的过滤器,但我不能确定它们是什么,该怎么办。我有基于下拉列表的过滤器,所以有时我可能没有 22 space。我正在寻找的是这样的东西:
table.clearColumnFilters("age");
或
table.removeFilter("age", ">", *);
(其中 * 是通配符)
我不想删除其他列上的筛选器,因此将整个 table 清空是不好的。 我现在拥有的是针对每个可能的输入值的 removeFilter - 但我的下拉列表将会扩展,我不能只为每个项目添加 removeFilters。
是否有清除所有过滤器的方法?
所以我想出了一个方法来做到这一点:
var allFilters = table.getFilters();
for (var filter = 0; filter< allFilters.length; filter+=1){
if (allFilters[filter]['field'] === "age"){
table.removeFilter("age",allFilters[filter['type'],allFilters[filter]['value']);
}
}
遍历过滤器,如果它与您要“取消过滤”的列匹配,则将其删除。