告诉数据表使用自定义按钮进行文件导出

Posted

技术标签:

【中文标题】告诉数据表使用自定义按钮进行文件导出【英文标题】:tell datatable to use custom button for file export 【发布时间】:2020-10-05 04:26:12 【问题描述】:

我有一个工作的 html/js 数据表示例 jsfiddle,它有两个用于导出数据的工作按钮; excel和csv。我这样声明我的数据表:

$('#example').DataTable( 
    dom: 'Bfrtip',
    columns: [
         data: 'name' ,
         data: 'surname' ,
         data: 'position' ,
         data: 'office' ,
         data: 'salary' 
    ],
    buttons: [
                  
                      extend: 'excelHtml5',
                      text: 'excel',
                      exportOptions:   modifier:   page: 'current'   
                  ,
                  
                      extend: 'csvHtml5',
                      text: 'csv',
                      exportOptions:   modifier:   page: 'current'   
                  
              ]
 );

在这种情况下会出现两个默认按钮。在我的 html 中,我有两个要连接到数据表的自定义按钮元素:

<button id='excelExport'>click this to export excel</button><button id='csvExport'>click this to export csv</button>

因此,当我单击“excelExport”按钮时,它会触发数据表导出 excel。我正在尝试让两个自定义按钮都能正常工作,这样我就可以将它们放置在具有不同样式的更具体的位置,而不是使用表格的默认导出按钮。

如何扩展我的数据表导出 excel 功能以使用 id=excelExport 的自定义按钮? 过去,我使用自定义搜索栏进行表搜索时做过类似的事情。为此,我必须像这样扩展搜索功能:

 //set datatable to use custom search box
$('#bottomTableSearch').on('keyup change', function () 
    myBrandGapsTable.search(this.value).draw();
);  

有什么方法可以为我的 id=excelExport 按钮做同样的事情吗?喜欢:

//set datatable to use custom excel export button
$('#excelExport ').on('click', function () 
    myBrandGapsTable.export(excel); //???? pseudocode, trying to get this concept working
);  

Jsfiddle 和我的例子在这里:

https://jsfiddle.net/martinradio/c0wezht7/12/

【问题讨论】:

【参考方案1】:

您可以像这样触发数据表按钮的点击事件:

 $("#excelExport").on("click", function() 
    $(".buttons-excel").trigger("click");
 );
 $("#csvExport").on("click", function() 
    $(".buttons-csv").trigger("click");
 );

【讨论】:

以上是关于告诉数据表使用自定义按钮进行文件导出的主要内容,如果未能解决你的问题,请参考以下文章

Finereport可以自定义一个导出按钮么

如何使用jquery数据表自定义按钮导出水晶报告pdf

dataTables导出按钮显示在自定义位置?

dataTables导出按钮显示在自定义位置?

如何自定义 jquery 数据表导出,例如 PDF Excel Print 和 CSV?

无法使用 api v2.4 在 ios 中使用自定义按钮登录 facebook