我在我的网站上使用数据和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://github.com/vedmack/yadcf
谢谢。
发布于 2017-08-31 08:46:24
请阅读医生们和过滤mutiselect列的用法示例
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)
因为它是一个多选择过滤器,所以必须在数组中提供筛选值。
发布于 2017-08-29 11:31:29
好吧我发现了些东西。相反,我使用了yadcf的exColumnFilter函数,使用了Datatables搜索函数。
oTable.columns(3).search("WNC402").draw();就像一种魅力。过滤器现在出现,甚至在我的情况下是可移动的。
我希望这对其他人也有帮助。
发布于 2020-08-26 08:48:12
在datatable的init完整事件中,我已经解决了jQuery的问题。
$("#yadcf-filter--kt_datatable-28").val("Active");
$("#yadcf-filter--kt_datatable-28").trigger("change");https://stackoverflow.com/questions/45921604
复制相似问题