yadcf: exFilterColumn 函数不工作
yadcf: exFilterColumn function is not working
我在我的网站上使用数据表和 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
谢谢。
好的,我发现了一些东西。我使用了数据表搜索功能,而不是使用 yadcf 的 exColumnFilter 功能。
oTable.columns(3).search("WNC402").draw();
很有魅力。
过滤器现在出现,在我的例子中甚至是可移动的。
我希望这对其他人也有帮助。
请阅读the docs和过滤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)
由于它是一个多重 select 过滤器,您必须在数组中提供过滤器值。
我已经在数据表的初始化完成事件中解决了 jQuery 的问题。
$("#yadcf-filter--kt_datatable-28").val("Active");
$("#yadcf-filter--kt_datatable-28").trigger("change");
我在我的网站上使用数据表和 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
谢谢。
好的,我发现了一些东西。我使用了数据表搜索功能,而不是使用 yadcf 的 exColumnFilter 功能。
oTable.columns(3).search("WNC402").draw();
很有魅力。 过滤器现在出现,在我的例子中甚至是可移动的。
我希望这对其他人也有帮助。
请阅读the docs和过滤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)
由于它是一个多重 select 过滤器,您必须在数组中提供过滤器值。
我已经在数据表的初始化完成事件中解决了 jQuery 的问题。
$("#yadcf-filter--kt_datatable-28").val("Active");
$("#yadcf-filter--kt_datatable-28").trigger("change");