我想创建一个函数来创建一个新的DataTable。 如果表已经存在,我希望我的函数破坏现有表并创建新表。
我这样做了:
$.ajax().done(function(response){ Init_DT(response['cols'], response['data']); }); function Init_DT(cols, data){ if($('#mytable tr').length > 0){ table.destroy(); } var table = $('#mytable').DataTable({ "data": data, "columns": cols }); }
这个函数可以很好地启动我的第一个表,但是在后续调用中我得到“无法读取’未定义的属性”。
本地JavaScript变量。
函数内定义的变量具有本地范围。 它在function完成时被破坏。
function myFunction() { var myVar = "value";}
这个函数myVar将在函数完成其工作后被销毁。 在下一次调用中,它将再次定义。
使用全局变量。 即在函数外定义它然后使用它。 即
var myVar='value';function myFunction(){//here myVar can be accessed}
或者在函数内部为变量赋值,它将变为全局变量。
function myFunction(){ myVar = 'value'; }
现在myVar也将是全球性的。
因此你需要使用
table = $('#mytable').DataTable({ "data": data, "columns": cols });
参考: w3Schools JS变量范围
以上就是jQuery教程分享DataTables“无法读取未定义的属性’destroy’相关内容,想了解更多jQuery开发(异常处理)及jQuery教程关注计算机技术网(www.ctvol.com)!)。
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/jquerytutorial/561877.html