我已经使用dtInstance创建了一个如下表:
<table datatable="ng" dt-options="dtOptions" dt-column-defs="dtColumns" dt-instance="dtInstance" class="row-border hover">
</table>
在控制器中,我定义了dtOptions和dtColumns:
$scope.dtInstance = {};
$scope.dtOptions = DTOptionsBuilder.newOptions()
.withDOM('frtip')
.withButtons([
{
extend: "excelHtml5",
className: 'btn btn-success buttons-excel',
filename: "List",
title: "List",
text: "Export",
exportOptions: {
columns: ':visible'
},
//CharSet: "utf8",
exportData: { decodeEntities: true }
}
我的问题是我想在dt表外创建一个按钮并在ng-click时触发.withButtons导出按钮
我还想隐藏表内生成的.withButtons。
得到这个错误
TypeError:无法读取未定义的属性“按钮”
当我使用下面的代码
<button ng-click="dtInstance.DataTable.button('.buttons-excel').trigger()">Download EXCEL</button>
谢谢
最佳答案
尝试使用null
而不是{}
初始化dtInstance变量:
$scope.dtInstance = null;
保持其他所有内容不变。
更新:
检查是否已导入所需的所有插件。请按照下面创建的示例进行确认:
Plunker example