如何从jQuery Datatable获取过滤的数据结果集

时间:2015-10-16 11:42:21

标签: jquery datatables datatables-1.10

如果有人帮我解决这个问题,那将会很棒。

我只是想从Datatable中获取过滤结果集。

以下是我的代码。

var filtered_row_data = $('#example').DataTable().column(1).search('186').data().unique().sort();

 console.log(JSON.stringify(filtered_row_data));

它只返回所有行而不是过滤值。

我正在使用Datatable的最新稳定版本。

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:42)

请参阅dataTables selector-modifiers。您正在寻找{filter : 'applied'}

table.on('search.dt', function() {
    //number of filtered rows
    console.log(table.rows( { filter : 'applied'} ).nodes().length);
    //filtered rows data as arrays
    console.log(table.rows( { filter : 'applied'} ).data());                                  
})  

演示 - >的 http://jsfiddle.net/h4wrmfx3/

答案 1 :(得分:0)

如果您正在使用服务器端过滤/搜索,这是我找到的唯一解决方案,并且可以使用:xhr event

$('#yourTable').on('xhr.dt', function ( e, settings, json, xhr ) {
        //the new data is here json.data
        console.log(json.data);
});