[英]Multiple column filtering in a single dropdown in DataTables
我正在使用DataTables(jQuery Javascript库的插件)。 已经有可能进行搜索和过滤,但是我没有找到我想要的东西。
我已经在网上搜索过,但是还没有找到解决问题的方法。 也许我搜索了错误的术语,所以对于解决我的问题的方法可能非常简单感到抱歉。
所以,我想做的是以下几点:
摘要:我想创建一个下拉列表,其中提供执行多列过滤/搜索的选项。
那么,我该如何实现呢? 在DataTables中甚至有可能吗?
提前致谢。
这个JS:
$(document).ready(function() {
var table = $('#example').DataTable();
$('select[name="filter"]').change(function() {
if (!$(this).val()) {
table.columns().search("").draw();
} else {
table.columns().search("");
var option = $(this).find(":selected");
var columns = Object.keys(option.data());
console.log(columns)
$.each(columns, function(k, v){
table.columns(parseInt(v, 10)).search(option.data(v));
});
table.draw();
}
});
});
使用此HTML:
<select name="filter">
<option value="">No filter</option>
<option data-1="Accountant">Filter Accountant</option>
<option data-2="Tokyo">Filter Tokyo</option>
<option data-1="Accountant" data-2="Tokyo">Filter Accountant in Tokyo</option>
</select>
应该做你所需要的。 我们遍历所选选项的数据属性并搜索相关列。 在这里工作的JSFiddle。
希望能有所帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.