问题描述:
利用jQuery Datatable和artTemplate组合来做的表格。但是当删除数据时,需要重新加载table里的数据。但是问题是datatable并没有直接的重新渲染,反而给数据累加上了。
解决办法:
经过查看高人的blog,发现可以先销毁table,然后再重新渲染。
rush:js;">
var dttable;
App.globalAjax("get","/Order/MyJsonList",{},function (result) {
var html = template('Orders-template',result);
$("#datatable1").find("tbody").html(html);
dt = $('#datatable1').dataTable({
"sPaginationType": "bs_full"
});
});
这个是第一次通过ajax获取到数据,然后利用artTemplate来渲染数据,最后填充到页面中,然后进行渲染。
接下来就是执行删除操作,然后重新加载渲染table
rush:js;">
App.globalAjax("post","/Order/DeleteOrder",data,function (result) {
App.globalAjax("get",function (result) {
var html = template('Orders-template',result);
if ($('#datatable1').hasClass('dataTable')) {
dttable = $('#datatable1').dataTable();
dttable.fnClearTable(); //清空一下table
dttable.fnDestroy(); //还原初始化了的datatable
}
$("#datatable1").find("tbody").html(html);
$('#datatable1').dataTable();
});
});
到此,datatable就可以重新渲染了。
以上所述是小编给大家介绍的jQuery使用DataTable实现删除数据后重新加载功能。编程之家 jb51.cc 收集整理的教程希望能对你有所帮助,如果觉得编程之家不错,可分享给好友!感谢支持。