这个问题很棘手所以我会发布上下文:
bDestroy : true
从头开始引导表。 当我通过AJAX加载新表时,随着JSON不断堆积,AJAX调用获取数据。
如何防止这些电话堆叠并将其减少为一个?谢谢。
/* datatables initializer */
$("#table").dataTable({
bDestroy : true
, bServerSide : true
, sAjaxSource : "path/to/json.json"
, ...
});
/* script inside the AJAX loaded content. It outputs a <table>. */
$(function() {
$("body").trigger({ type : "tableready", options : { ... } });
});
答案 0 :(得分:0)
这个问题的答案来自DataTables的责任。上面的代码示例缺少问题的原因。
我已经构建了一个类,它将绑定一个事件绑定到一个赋予表权限的函数。每次我调用检索表的AJAX调用时,函数都会在顶部堆叠另一个绑定,因此会多次调用数据。
解决方案是检查您是否已经绑定了该事件,或者unbind()
该事件,然后重新bind()
。