JMB*_*JMB 5 javascript jquery pagination datatables jquery-datatables
我有一个 JQuery 数据表,它通过 ajax 请求加载数据。表格旁边有一个表格,可让用户过滤服务器上的结果。当用户更改过滤器表单时,我使用新的过滤器数据调用 fnReloadAjax(),然后使用新的过滤结果重新绘制表格。
我遇到的问题是分页会粘住,即使表格不再有足够的项目来到达当前页面。因此,如果表格最初有 20 个项目,并且用户在第 2 页(每页 10 个项目),并且他们更改过滤器以便只返回 5 个项目,则表格不显示任何项目并在底部显示:
Showing 11 to 5 of 5 entries
Run Code Online (Sandbox Code Playgroud)
即使只有一页的数据,它仍然在第 2 页。
我发现了许多关于尝试保留当前页面/行的帖子,但没有一个显示将分页重置为第一页的简单方法。什么是最简单的方法来做到这一点?
为了清楚起见,这是我的代码的简化版本:
$("#mytable").dataTable({
bStateSave: false,
fnServerData: function (sSource, aoData, fnCallback) {
return $.ajax({
type: "POST",
url: url,
data: {filter: filterValue}
});
}
});
$("#myForm").submit(function(e) {
table.fnReloadAjax();
return false;
});
Run Code Online (Sandbox Code Playgroud)
您可以在重新加载后显式跳转到第一页,请参阅http://datatables.net/api#fnPageChange
$("#myForm").submit(function(e) {
table.fnPageChange(0);
table.fnReloadAjax();
return false;
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18862 次 |
| 最近记录: |