我在 webapp 上使用数据表作为我的网格。问题是,用户必须始终刷新页面才能从数据库中获取当前数据,有没有办法可以自动完成?因为多个应用程序写入同一个表,而 webapp 只是用于监控,但如果用户必须刷新页面才能获取当前数据,则它超出了目的。这是我的初始化代码:
$('.{{datatable['class']}}').dataTable( {
"sDom": 'T<"clear">lfrtip',
"oTableTools": {
"sSwfPath": "includes/swf/copy_csv_xls_pdf.swf",
"aButtons": [
{
"sExtends":"copy",
"mColumns":[{{datatable['flds']}}]
},
{
"sExtends":"csv",
"mColumns":[{{datatable['flds']}}]
},
{
"sExtends":"xls",
"mColumns":[{{datatable['flds']}}]
},
{
"sExtends": "pdf",
"mColumns":[{{datatable['flds']}}],
"sPdfOrientation": "landscape",
"sPdfMessage": "{{datatable['title']}}"
}
]
},
"bProcessing": true,
"bServerSide": true,
"sAjaxSource": "{{datatable['source']}}",
"aoColumns": [
{% for column in 0..datatable['columns']-2 %}
null,
{% endfor %}
null
]
});
每次数据源发生任何事情(更新/插入/删除)时,列表是否可以自我更新?我按照丹尼的建议实现了一个循环,
var int=self.setInterval(function(){oTable.fnDraw();},1000);
但问题是列表总是一个有趣的状态,见附图