我试图在我的HTML页面上每秒刷新一次表而没有闪烁。我正在使用javascript和ajax来尝试实现这一点。
这是我的脚本
var table = $('#dt').DataTable( {
ajax: "data.json"
} );
setInterval( function () {
table.ajax.reload();
}, 1000 );
我的表格为id="dt"
,class="sorttable"
我需要更新的所有内容都在div="div1"
我需要它每秒更新一次以显示新的活动连接。
非常感谢任何帮助或建议。
答案 0 :(得分:0)
究竟什么不能使用你的代码因为它对我来说似乎没问题?以下代码应该可以正常工作。
var table = $('#dt').DataTable( {
ajax: "data.json"
} );
setInterval( function () {
table.ajax.reload( null, false ); // user paging is not reset on reload
}, 1000 );
我添加了参数,以便保留分页。顺便说一下,我希望你包括jQuery库?而且我猜你也可以用table.ajax.reload
OR $table.fnDraw();
替换table.fnReloadAjax();
,它应该同样有效
这是plunk,可以满足您的需求。我已将刷新率设置为3秒。转到任何其他页面,以便您可以看到正在执行的刷新,否则您可能无法看到任何更改,因为数据没有更改。我认为重新加载方法需要参数以保留分页。您可能需要查看该文档
答案 1 :(得分:0)
您需要将serversid选项设置为true,以便对数据表进行serer端处理。
$(document).ready(function() {
var sunixi=$('#sunixi').DataTable( {
"processing": true,
"serverSide": true,
"ajax": "../server_side/scripts/server_processing.php"
} );
//reload the datatable after 30 secs
setInterval(function(){
sunixi.ajax.reload();//user paging will be reset on reload
}, 3000);
} );
sunixi.ajax.reload(null,false); //重新加载时不重置用户分页