Jquery 设置自定义文件名datatables使用选择文本导出excelHtml5

Jquery 设置自定义文件名datatables使用选择文本导出excelHtml5,jquery,html,button,datatables,export,Jquery,Html,Button,Datatables,Export,我想知道如何设置一个自定义文件名,以便在datatables按钮Excel HTML5中使用select导出。我做了一个传递名称的函数,但没有设置它。我将发布我的js代码。警报反映了变化,但当我调用datatables中的excel按钮时,它变空了 代码如下: var reportName=‘24小时后’; $'example'.DataTable{ dom:'Bfrtip', 按钮:[ { 扩展:“excelHtml5”, 标题:报告名称 }, { 扩展:“pdfHtml5”, 标题:“数据导

我想知道如何设置一个自定义文件名,以便在datatables按钮Excel HTML5中使用select导出。我做了一个传递名称的函数,但没有设置它。我将发布我的js代码。警报反映了变化,但当我调用datatables中的excel按钮时,它变空了

代码如下:

var reportName=‘24小时后’; $'example'.DataTable{ dom:'Bfrtip', 按钮:[ { 扩展:“excelHtml5”, 标题:报告名称 }, { 扩展:“pdfHtml5”, 标题:“数据导出” } ] }; $'campaing'.changefunction{ reportName+=$this.find:selected.text+'report'; }; 我想我可能遗漏了什么。

初始化dataTable时会读取一次标题,然后将值映射到内部配置对象中。因此,如果要动态更改设置,必须更改该内部配置对象,而不是尝试更改只读配置设置

因此,用另一种方法来做——为按钮init回调本身内部创建一个事件侦听器。如果您有一个具有如下可选文件名的

文件名A 文件名B 文件名C 然后,您可以通过以下方式动态更改导出文件名==标题+扩展名

按钮:[ { 扩展:“excelHtml5”, 标题:“filenameA”,//默认文件名 init:functiondt、节点、配置{ $filename.on'change',函数{ config.title=this.value; } } }, 您也可以在处理程序中更改其他配置属性,例如,您可能希望将config.extension更改为其他内容

这是一个演示->
需要强调的是,dataTables.buttons.js 1.3.0或更高版本是必需的;buttons.html5.js模块也是如此。因此,如果上述方法不起作用,请升级->

您也可以使用filename config对象进行设置。 我在导出文件时使用了这种方法,它适用于dataTables.buttons.js的早期版本,因为我在v1.2.1中使用它,我是这样使用的:

buttons: [
             {
                 extend: 'excel',
                 filename: function(){
                     return reportName;
                 }
             }
         ]
其中reportName是输入选项更改时我正在设置的变量