使用draw()、ajax、分页刷新数据表
Datatables refresh with draw(), ajax, pagination
我试图每隔几秒钟用来自服务器的数据刷新我的表。它正在加载新数据,但分页根本不起作用。我的意思是,这是一个大的数据列表。它还说Showing 0 to 0 of 0 entries (filtered from NaN total entries)
是表底部的分页
我在setInterval
函数中使用draw(false)来实现刷新。我想这样做而不使用"serverSide":"true"
,但我发现draw()
不调用ajax
url,除非我使用serverSide
选项。
function myFunction() {
var table1 = $("#example1").dataTable({
"ajax": '/api/GetData',
"serverSide": "true",
"columns": [
{
"data": "DateCreated",
},
{ "data": "UserName" }
],
"destroy": true
});
setInterval(function test() {
table1.draw(false);
}, 3000);
}
当我省略"serverSide":"true"
表是正确绘制的分页,但ajax不调用draw()
。如何获得ajax数据并正确设置分页?
使用Ajax .reload()从Ajax数据源重新加载表数据,false
作为第二个参数,以避免重置当前分页位置。
table1.api().ajax.reload(null, false);
因为你的表是用dataTable()
初始化的,所以API方法可以用table1.api()
方法访问。否则,如果使用DataTable()
初始化表,则可以直接使用table1
访问API方法。
确保您的AJAX函数返回:sEcho, iTotalRecords, iTotalDisplayRecords和iDisplayLength。
同时,在客户端调用dataTable函数时,设置"iDisplayLength": 500。
您可以在https://datatables.net/forums/discussion/512/clarification-of-itotalrecords-and-itotaldisplayrecords上阅读更多关于这些参数的信息
- 如何使用skip参数使用angular ui引导进行服务器端分页
- 如何通过引用var Using DataTables来进行分页或排序
- 使用CSS或JavaScript计算分页符的数量
- DataTables-创建自定义分页样式(加载更多样式)
- 使用ajax的服务器端分页&jQuery
- 分页:如何用AJAX加载第一个页面
- dataTables-如何自定义分页类型以显示最后一个页码后面的省略号,
- 不带jquery的全屏分页
- 更改组合框分页后,getValue和getRawValue返回相同的值
- jQuery简单分页
- 使用jQuery在表中分页
- jQuery分页下一页和上一页按钮在点击零或超过最后一页后失败
- Kendo UI网格:数据源刷新后,我丢失了分页
- jQuery分页刷新:分页不记得以前页面中更改的样式
- AJAX 分页每隔一个链接刷新页面
- 从mysql中分页数据表,自动刷新
- 自定义下拉筛选器和引导程序表分页刷新
- Extjs分页工具栏刷新
- 如何重新加载数据而不使用分页刷新页面
- 使用draw()、ajax、分页刷新数据表