Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/471.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Datatables多筛选器同一列_Javascript_Jquery_Html_Datatable_Datatables - Fatal编程技术网

Javascript Datatables多筛选器同一列

Javascript Datatables多筛选器同一列,javascript,jquery,html,datatable,datatables,Javascript,Jquery,Html,Datatable,Datatables,我需要能够使用datatables对单个列应用多个过滤器 我一直在看他们提供的一个例子,但我的要求略有不同 我的表格中的第一列将包含位置信息,每个单元格将包含建筑名称和楼层。我想有两个下拉列表,允许用户过滤这两个 例如“给我看1号楼和2楼” 我可以让第一个下拉列表在建筑物上过滤,但第二个下拉列表在地板上不过滤。我的当前代码如下,这是一个 注意:我简化了这个表并将其限制为6条记录,我的live表将包含数百条记录 $(文档).ready(函数(){ var table=$(“#示例”).DataT

我需要能够使用datatables对单个列应用多个过滤器

我一直在看他们提供的一个例子,但我的要求略有不同

我的表格中的第一列将包含位置信息,每个单元格将包含
建筑名称
楼层
。我想有两个下拉列表,允许用户过滤这两个

例如“给我看1号楼和2楼”

我可以让第一个下拉列表在建筑物上过滤,但第二个下拉列表在地板上不过滤。我的当前代码如下,这是一个

注意:我简化了这个表并将其限制为6条记录,我的live表将包含数百条记录

$(文档).ready(函数(){
var table=$(“#示例”).DataTable();
$(“#dropdown1”)。在(“change”,function()上{
桌子
.列(0)
.search(此.value)
.draw();
});
$(“#dropdown2”)。关于(“更改”,函数(){
桌子
.列(0)
.search(此.value)
.draw();
});
});

建筑
1号楼
2号楼
地板
一楼
二楼
三楼
位置
地位
1号楼一楼
可用
1号楼
二楼 可用 1号楼
三楼 可用 2号楼一楼 不可用的 2号楼二楼 可用 2号楼
三楼 不可用的
这很有效

创建一个select元素数组,用空格连接它们,并将它们作为一个搜索词发送。认为DT在他们的文档中有更多关于正则表达式的内容

<select class="filter_location" id="filter_building">
    <option value="">Building</option>
    <option value="Building 1">Building 1</option>
    <option value="Building 2">Building 2</option>
</select>

<select class="filter_location" id="filter_floor">
    <option value="First Floor">First Floor</option>
    <option value="Second Floor">Second Floor</option>
    <option value="Third Floor">Third Floor</option>
</select>

$('select.filter_location').on( 'change', function () {
    var val = [];
    val.push($('#filter_building').val());
    val.push($('#filter_floor').val());
    table.column(0).search(val.join(' ')).draw();
} );

建筑
1号楼
2号楼
一楼
二楼
三楼
$('select.filter_location')。打开('change',函数(){
var-val=[];
val.push($('filter_building').val());
val.push($('#过滤层'.val());
table.column(0).search(val.join(“”)).draw();
} );