数据表:未捕获类型错误:无法读取未定义的属性“按钮”
DataTables: Uncaught TypeError: Cannot read property 'buttons' of undefined
我在设置使用按钮插件的自定义数据表时遇到问题。
我可以设置一个有效的自定义默认dom
布局:
//vanilla dom (frtip...)
$.extend($.fn.dataTable.defaults, {
dom: 'frtip'
});
但是,如果我尝试在dom
布局中包含"B"字符:
// Invoke Buttons plugin (Bfrtip...)
$.extend($.fn.dataTable.defaults, {
dom: 'Bfrtip'
});
。然后运行 dataTables,报告此 JavaScript 错误:
未捕获的类型错误:无法读取未定义的属性"按钮"
我做错了什么?
请参阅 https://jsfiddle.net/jhfrench/at83rcoL/
我在起草这个问题时想通了。在这里分享来之不易的答案:
仅仅包含相关的JS资产(jquery.dataTables.min.js,dataTables.buttons.min.js等)是不够的。您还必须通过使用 button
对象元素扩展默认值来调用 Button 插件:
// Invoke Buttons plugin (Bfrtip...)
$.extend($.fn.dataTable.defaults, {
buttons: [ 'copy', 'csv', 'excel' ]
});
或者你可以在dataTable()
初始化时调用它:
$("#table2").DataTable({
buttons: [
'copy', 'excel', 'pdf'
]
});
有关这两种方法工作的示例,请参阅 https://jsfiddle.net/jhfrench/at83rcoL/8/。
相关文章:
- 将对象作为参数传递后的未定义属性
- 检查链接对象形式中未定义属性的最佳实践是什么
- PhantomJS中的evalute内部未定义属性
- 访问数字类型的未定义属性
- 如何处理未定义属性的未定义属性 javascript 类型错误
- 返回未定义属性的脚本
- 类型错误:无法读取 ng-repeat 的未定义属性
- JavaScript-Disqus如何处理其“;disqus_config”;包含未定义属性的函数
- 是对HTMLElement#样式的未定义属性的赋值的返回值,保证与赋值相同
- 最好检查未定义属性或设置为空
- 如何解决这个未定义属性的node.js错误?
- 如何在JavaScript中挽救对象的未定义属性?
- AngularJS和PHP -注意:未定义属性:stdClass
- 主干模型删除未定义属性
- if else子句中未定义对象的未定义属性
- Javascript数组问题:无法读取未定义属性
- 当尝试使用未定义属性进行筛选时,Lodash将排除项
- 在Javascript数组的中途未定义属性
- Knockout arrayForEach未定义属性
- javascript中未定义属性的简写,初始化和赋值属性