我正在使用DataTables插件从mysql表中检索数据并显示它们。为此,我使用他们的服务器端处理代码来检索所有数据。到目前为止,它工作得很好。现在,我每分钟都在检查数据库是否插入了新记录。如果在数据库中插入了新记录,我将调用数据表函数。此时,它会清除整个记录,并显示新插入的记录,这样看起来就像加载了整个页面一样。我们可以不清除现有数据吗?或者我们可以在不清除记录的情况下将新插入的记录附加到现有记录中吗?或者我该如何处理这个问题?
以下是我的代码
$('#example').dataTable({
"bProcessing": false,
"bServerSide": true,
"sPaginationType": "full_numbers",
"iDisplayLength":10,
"bDeferRender": true,
"bFilter": false,
"bSort": false,
"bInfo": true,
"sAjaxSource": #PHP_PATH#/json_data"
});发布于 2012-12-17 18:26:24
对于您正在尝试实现的目标,我也建议您研究一下SignalR --它太棒了!
您使用bServerSide处理的目的是什么?
第一次生成页面并将其发送到客户端时,将使用当时的最新数据呈现datatable。此后,在随后的每次ajax调用中,如果您的服务器只向您返回新数据,那么您所要做的就是在success/complete回调中调用下面的方法。
function AddRow(row) {
$('#example').dataTable().fnAddData([
row[0],
row[1],
row[2]]);
}$.ajax({
//...
success: function(data) {
//assuming data = ["COL.1", "COL.2", "COL.3"]
AddRow(data);
}
//...
});https://stackoverflow.com/questions/13911982
复制相似问题