当我过滤它时,它会清除我在jQuery数据表上的全局搜索



我正在使用为下拉过滤器的数据表构建的插件我正在使用 fnFilter 为它。

问题是当我第一次搜索时,假设我搜索了"测试"它返回一行,然后当我过滤时,过滤器不会进行过滤我在桌子上的一行,但它清除了我的全局搜索不知何故。

有人可以帮我吗?

我认为它只是 fnFilter 清除数据表上的搜索((,但我不想将 fnFilter 更改为搜索。

我将过滤器应用于列时没有这个问题,如果您不提供列以将过滤器设置为传递给过滤器的值将替换搜索。

$(document).ready(function() {
    const dt = $('#example').dataTable({"sPaginationType": "full_numbers"});
    $("#filterbtn").on("click",x=>{
        dt.fnFilter( 'Gecko',0 );//column will not replace search
      dt.fnFilter( 'Camino',1 );//multiple filters are possible
    });
    $("#resetfilterbtn").on("click",x=>{
        dt.fnFilter( '',0 );//reset the filter (does not reset search)
      dt.fnFilter( '',1 );
    });
});

这是一个 jsfiddle 示例。

在 jsfiddle 示例中搜索 3+ 并获取 5 行,然后按过滤器按钮并获取

1 行,然后按重置过滤器按钮并再次获取 5 行。

如果您按下过滤器按钮,您将获得 2 行,无论您搜索什么,您都不会得到超过 2 行(搜索不会重置过滤器(

最新更新