使用或过滤关键字
Filter for keywords with either or
我想针对多个条件(文档 http://tabulator.info/docs/4.5/filter#search-data)过滤制表符 table 并为此创建了以下函数:
function concepts() {
table.setFilter("type", "like", "keyword1");
table.setFilter("type", "like", "keyword2");
table.setFilter("type", "like", "keyword3");
}
当我 运行 函数时,制表符仅显示与我的过滤器 table.setFilter("type", "like", "keyword3");
最后一行匹配的行,而忽略对其他关键字的搜索。有没有办法让制表符显示包含 keyword1
、keyword2
或 keyword3
的行?
实际上只考虑了 setFilter 的最后一次调用,这就是为什么不考虑第一个关键字的原因。
如果您确定数据将匹配三个关键字之一,则可以使用 Array In。
table.setFilter("type", "in", ["keyword1", "keyword2", "keyword3"]);
在您的示例中,您似乎想要使用 "like" 类型。在这种情况下,您应该在对象数组中定义 3 个过滤器,如下所示。
table.setFilter([
{"field": "type", "type": "like", "value": "keyword1"},
{"field": "type", "type": "like", "value": "keyword2"},
{"field": "type", "type": "like", "value": "keyword3"},
]);
两种解决方案均取自您链接的文档:
http://tabulator.info/docs/4.5/filter(在数组和应用多个过滤器部分)
我想针对多个条件(文档 http://tabulator.info/docs/4.5/filter#search-data)过滤制表符 table 并为此创建了以下函数:
function concepts() {
table.setFilter("type", "like", "keyword1");
table.setFilter("type", "like", "keyword2");
table.setFilter("type", "like", "keyword3");
}
当我 运行 函数时,制表符仅显示与我的过滤器 table.setFilter("type", "like", "keyword3");
最后一行匹配的行,而忽略对其他关键字的搜索。有没有办法让制表符显示包含 keyword1
、keyword2
或 keyword3
的行?
实际上只考虑了 setFilter 的最后一次调用,这就是为什么不考虑第一个关键字的原因。
如果您确定数据将匹配三个关键字之一,则可以使用 Array In。
table.setFilter("type", "in", ["keyword1", "keyword2", "keyword3"]);
在您的示例中,您似乎想要使用 "like" 类型。在这种情况下,您应该在对象数组中定义 3 个过滤器,如下所示。
table.setFilter([
{"field": "type", "type": "like", "value": "keyword1"},
{"field": "type", "type": "like", "value": "keyword2"},
{"field": "type", "type": "like", "value": "keyword3"},
]);
两种解决方案均取自您链接的文档:
http://tabulator.info/docs/4.5/filter(在数组和应用多个过滤器部分)