如何获取已筛选的行数

How to get filtered row count

本文关键字:筛选 何获取 获取      更新时间:2023-09-26

我一直试图在过滤后获取表的行数,但最初我甚至无法让它返回行数。

我的表是通过HTML5呈现的,并由PHP填充,所有这些都正常工作。

<table id="table_books" class="table datatable" data-searchplaceholder="Search books..." data-margindifference="70" >
 <thead>
 <tr>
  <th style="width:30px;"><i class="fa fa-code" title="click"></i></th>
  <th>Column1</th>
  <th>Column2</th>
  <th>Column3</th>
  <th class="text-right hidden-xs" style="width:20%">Details</th>
 </tr>
 </thead>
<tbody>
 <?php echo $contenthtml; ?>
</tbody>
</table>

我发现文档说这在1.9中有效,但我得到了一个无效的函数

$(document).ready(function() {
 var btable = $('#table_books').DataTable();
 var b_table_count = btable._('tr', {"filter":"applied"});
 console.log(b_table_count);
});

使用page.info() API方法获取有关表的分页信息。

它返回一个对象,例如:

{
    "page": 1,
    "pages": 6,
    "start": 10,
    "end": 20,
    "length": 10,
    "recordsTotal": 57,
    "recordsDisplay": 57
}

用法:

function getNumFilteredRows(id){
   var info = $(id).DataTable().page.info();
   return info.recordsDisplay;
}