【发布时间】:2016-03-02 09:28:24
【问题描述】:
尝试使用以下方法删除行
table.DataTable().row().remove().draw();
我尝试使用以下方法添加
1) table.dataTable().fnAddData(jsonObject);
2)table.DataTable().row.add(jsonObject).draw();
添加不起作用,它正在删除旧数据,并且在重绘后再次显示该行中的旧数据。
首先我进行 ajax 调用并从数据库中获取数据,之后我需要在客户端添加数据而不进行 ajax 调用。
this.updateTableandMap=function(jsonObject){
if(jsonObject!=null){
var curTimeStamp=$('tr#'+jsonObject.trackeeId+'>td:eq(0)>a').attr('data-date-time-stamp');
if(jsonObject.dateAndTime>curTimeStamp){
$('#records-short').DataTable().row( $('#records-short>tbody>tr#'+jsonObject.trackeeId+'')).remove().draw();
// $('#records-short').DataTable().row.data(jsonObject).draw();
// $('#records-short').dataTable().fnAddData(jsonObject);
}else if(curTimeStamp==undefined){
$('#records-short').DataTable().row( $('#records-short>tbody>tr#'+jsonObject.trackeeId+'')).remove().draw();
$('#records-short>tbody>tr#'+jsonObject.trackeeId+'').remove();
$('#records-short').DataTable().row.add(jsonObject).draw();
}
}
};
【问题讨论】:
-
请分享您的脚本
-
嗨@HiralNayak 我已经分享了代码。
-
重绘表格时是否再次运行 AJAX 查询?如果是这样,这将导致表重新填充旧数据。
-
嘿@user3932103 - 你能从我现在删除的答案中重现小提琴中的错误吗? jsfiddle.net/ayz8hzcL 我想我误解了你的问题,并且不确定它是什么 - 正如你所写的那样,这可能还有更多“起初我正在进行 ajax 调用并从数据库中获取数据,之后我需要添加数据客户端无需进行 ajax 调用" ...
-
嗨@davidkonrad,感谢您的回复,它现在可以正常工作了。我们正在做服务器端分页,所以我们改变了数据表库中的代码。现在它工作正常。
标签: javascript jquery datatables datatables-1.10