如何使用Tabulator进行全线搜索?

问题描述

需要modern Tabulator的“全局搜索”过滤器界面,例如UNIX grep命令或Datatablesref1 search ref2)。

这个Tabulator issue was closed没有解决方案,而filter Guide却没有对全搜索说什么(也许有所有列和布尔值OR的多重过滤器)。

解决方法

您引用的问题在第一份答复中包含正确的答案,这就是为什么它已被关闭。

它将创建一个自定义过滤器函数,以查找传递给params对象的 value 属性的值。

然后使用 setData 函数

调用该函数
//custom filter function
function matchAny(data,filterParams){
    //data - the data for the row being filtered
    //filterParams - params object passed to the filter

    var match = false;

    for(var key in data){
        if(data[key] == filterParams.value){
            match = true;
        }
    }

    return match;
}

//set filter to custom function
table.setFilter(matchAny,{value:5});