datatables - 如何从数据表中的pdf中删除下拉选择选项
问题描述
我在页脚的每一列都包含下拉列表,在生成 pdf 时,所有选项都进入页眉。我们如何在导出时排除这些选项?
这是我的代码:
$('#example').DataTable( {
"dom": 'Bfirtlp',
buttons: [
{
extend: 'excelHtml5',
exportOptions: {
columns: ':visible'
}
},
{
extend: 'pdfHtml5',
orientation: 'landscape',
pageSize: 'A3',
exportOptions: {
columns: [ 0, 1, 2,3,4,5,6,7,8],
},
],
initComplete: function () {
this.api().columns().every( function () {
var column = this;
var eachHeader = $(column.header())[0];
var headingVal = eachHeader.getAttribute("value");
var select = $('<select class="btn btn-secondary btn-sm dropdown-toggle"><div class="dropdown-menu"><option class="dropdown-item" value="">'+ headingVal +'</option><div></select>')
.appendTo( $(column.footer()).empty() )
.on( 'change', function () {
var val = $.fn.dataTable.util.escapeRegex(
$(this).val()
);
column
.search( val ? '^'+val+'$' : '', true, false )
.draw();
} );
column.data().unique().sort().each( function ( d, j ) {
select.append( '<option value="'+d+'">'+d+'</option>' )
} );
} );
}
} );
解决方案
我得到了解决方案,
包括这个,
exportOptions: {
format: {
header: function ( data, column, row )
{
return data.substring(data.indexOf("value")+9,data.indexOf("</option"));
}
}
},
推荐阅读
- javascript - 在检索其内容之前执行页面脚本
- c++ - 检测 C++ 中异常处理的实现类型
- javascript - 为什么 console.log(fibonacci(3)); 打印未定义?
- javascript - 数据推送到数组后切换表中的行 | Vue
- azure - Zip 使用 Azure CLI 将 Azure 功能部署到 Azure 门户
- javascript - Ramda:我怎样才能让这个命令式 reducer 更具声明性?
- c++ - 将参数初始化为构造函数,而不是第一个
- javascript - devDependencies 会影响包大小吗?
- php - 在 Laravel 视图中使用 PHP 获取 HTTP 请求数据?
- c# - signalr.client.httpclientexception statuscode 404 异常通过 hubConnection.Start().Wait()