问题描述:
利用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); dttable = $('#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就可以重新渲染了。
如果大家想浏览我的下一篇文章,请留言
如对本文有疑问, 点击进行留言回复!!
VScode中的react自动补全标签代码及黄色or红色警告
关于React处理input的方法和多个input共用一个方法(不用jQuery)
网友评论