jQuery DataTable 删除数据后重新加载

Posted Rexcnblog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jQuery DataTable 删除数据后重新加载相关的知识,希望对你有一定的参考价值。

问题描述:

利用jQuery Datatable和artTemplate组合来做的表格。但是当删除数据时,需要重新加载table里的数据。但是问题是datatable并没有直接的重新渲染,反而给数据累加上了。

解决办法:

经过查看高人的blog,发现可以先销毁table,然后再重新渲染。

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

App.globalAjax("post", "/Order/DeleteOrder", data, function (result) {
            App.globalAjax("get", "/Order/MyJsonList", {}, 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 删除数据后重新加载的主要内容,如果未能解决你的问题,请参考以下文章

在asp.net mvc中删除数据成功后重新排序自动编号列JQuery Datatable

jquery 数据表页脚被附加而不是使用破坏

无法重新初始化 JQuery DataTable

jQuery DataTables - 无法重新初始化 DataTable

Jquery Datatable 搜索框重新定位

jquery datatable 通过oSetting更改sAjaxsource,如何重新获取数据