如何在具有特定类的DataTable中搜索项目?

问题描述:

我有DataTable的数据。我想创建一个按钮,当我点击他时,它将过滤所有具有divtd类别为“黄色”。 我有这样的代码:如何在具有特定类的DataTable中搜索项目?

var clients_table = $("#clients_table").DataTable(); 
clients_table.column(2).search($("div.yellow")); 

但是,这是不正确的。任何想法?

+0

你的意思是什么函数的过滤器。 –

+0

我的意思是功能过滤器会告诉我只有包装与黄色类div的项目 – oded

。为了筛选出其中第三列没有一个类.yellow你可以做到这一点的所有行:

var filter = function(settings, searchData, index, rowData) { 
    var $td = table.row(index).nodes().to$().find('td:eq(2)'); 
    return $td.find('.yellow').length; 
} 

打开过滤器上(例如在点击事件click事件):

$.fn.dataTable.ext.search.push(filter); 
table.draw(); 

把它关:

$.fn.dataTable.ext.search.pop(); 
table.draw(); 

小的演示 - >http://jsfiddle.net/7aLptLve/

+0

谢谢,它的工作 – oded

如果您想对CSS复杂的滤波或属性,您需要自己创建一个custom search filter试试这个

$("td div.yellow").each(function() { 

    //write your logic here 

}); 
+0

这是正确的,但我希望这将在数据表的搜索功能 – oded