How to get filtered Data result set from jQuery Datatable

对着背影说爱祢 提交于 2019-11-29 02:29:46

问题


It would be great if someone help me on the issue.

I am just trying to get the filtered result set from the Datatable.

Below is my code.

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

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

It just returns all the rows instead of filtered values.

I am using latest stable version of Datatable.

Can anyone please help on this?


回答1:


see dataTables selector-modifiers. You are looking for {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());                                  
})  

demo -> http://jsfiddle.net/h4wrmfx3/




回答2:


if you are using server side filtering / searching, this is the only solution i found and it works: xhr event

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


来源:https://stackoverflow.com/questions/33169649/how-to-get-filtered-data-result-set-from-jquery-datatable

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!