jQuery Datatable:使用search()匹配记录的数量

use*_*716 4 jquery datatables jquery-datatables

我正在搜索我的数据表

以下声明:

var dataTable =  $(#dt).DataTable().search("searchpattern");
dataTable.draw();
Run Code Online (Sandbox Code Playgroud)

所以一切都很好,数据表只显示与searchpattern匹配的条目.

但我如何确定,有多少条目与模式匹配?

我尝试过以下方法:

dataTable.rows().nodes().length;
Run Code Online (Sandbox Code Playgroud)

但返回的始终是所有记录的数量,而不是匹配记录的数量.感谢您的建议!

SSA*_*SSA 9

你可以使用它,根据get过滤行:

dataTable.$('tr',{"filter":"applied"}).length;


小智 5

从DataTables 1.10开始,使用dataTable.page.info()似乎是获取当前信息的最佳方式(在处理/搜索/重新加载后)。

所以..

var table = $('#example').DataTable();
var info = table.page.info();

console.log(info);
Run Code Online (Sandbox Code Playgroud)

结果:

{
    "page": 1,
    "pages": 6,
    "start": 10,
    "end": 20,
    "length": 10,
    "recordsTotal": 57,
    "recordsDisplay": 57,
    "serverSide": false
}
Run Code Online (Sandbox Code Playgroud)

info.recordsDisplay是您要的。ref:dataTables API的page.info()