我一直试图在过滤后得到我的表的行数,但我甚至无法让它最初回复行数.
我的表是通过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>
$(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;
}