yadcf:exFilterColumn 函数不起作用



我在我的网站上使用数据表和yadcf。一切正常。在某些情况下,我想预过滤列。

yadcf.init(oTable, [ {
column_number : 1,
filter_default_label : "",
filter_reset_button_text : false,
filter_type : "multi_select",
select_type : 'select2'
}, {
column_number : 2,
filter_default_label : "",
filter_reset_button_text : false,
filter_type : "multi_select",
select_type : 'select2'
}, {
column_number : 3,
filter_default_label : "",
filter_reset_button_text : false,
filter_type : "multi_select",
select_type : 'select2' 
}, {
column_number : 5,
filter_default_label : "",
filter_reset_button_text : false,
filter_type : "multi_select",
select_type : 'select2'
}, {
column_number : 6,
filter_default_label : "",
filter_reset_button_text : false,
filter_type : "multi_select",
select_type : 'select2'
} ]);

到目前为止,一切正常。但是当我添加:

yadcf.exFilterColumn(oTable, [[3, 'WNC402']]);

没有出现任何过滤器。控制台输出错误为:

jquery.dataTables.yadcf.js:688 Uncaught TypeError: selected_value.join is not a function
at yadcfMatchFilterString (jquery.dataTables.yadcf.js:688)
at Object.exFilterColumn (jquery.dataTables.yadcf.js:3792)
at HTMLDocument.<anonymous>
at i (jquery-2.2.4.min.js:2)
at Object.fireWith [as resolveWith] (jquery-2.2.4.min.js:2)
at Function.ready (jquery-2.2.4.min.js:2)
at HTMLDocument.J (jquery-2.2.4.min.js:2)

该网站仍然正确加载,我什至可以手动设置过滤器。但是该功能应该完成这项工作。

我的数据表版本是:1.10.12

我的 YADCF 版本是:0.8.9

一些链接:

https://datatables.net/

https://github.com/vedmack/yadcf

谢谢。

请阅读文档和过滤多选列的使用示例

yadcf.exFilterColumn(oTable, [[0, ['Some Data 1','Some Data 2']]]); // for pre filtering multi select filter you should use array with values (or an array with single value)

由于它是一个多选过滤器,您必须在数组中提供过滤器值。

好的,我发现了一些东西。相反,我使用了yadcf的exColumnFilter函数,而是使用了Datatables搜索函数。

oTable.columns(3).search("WNC402").draw();

就像一个魅力。 过滤器现在出现,在我的情况下甚至可以移除。

我希望这也能帮助其他人。

我已经解决了数据表的初始化完整事件中jQuery的问题。

$("#yadcf-filter--kt_datatable-28").val("Active");
$("#yadcf-filter--kt_datatable-28").trigger("change");

最新更新