我正在处理一个项目,我想在将表格导出为pdf时删除特定的列。所以我使用了datatables.net中的代码,这是我的导出代码
<script type="text/javascript">
$(document).ready(function() {
var currentDate = new Date()
var day = currentDate.getDate()
var month = currentDate.getMonth() + 1
var year = currentDate.getFullYear()
var d = day + "-" + month + "-" + year;
$('#detailTable').DataTable( {
dom: 'Bfrtip',
buttons: [
{
extend: 'excelHtml5',
title: d+ ' Purchase Orders'
},
{
extend: 'csvHtml5',
title: d+ ' Purchase Orders'
},
{
extend: 'pdfHtml5',
title: d+ ' Purchase Orders',
orientation: 'landscape',
pageSize: 'LEGAL'
}
]
} );
});
我把它设为风景,因为表格有点长,这里是我导出的pdf的输出(我审查了一些值,对不起)
有没有办法可以删除值为&#39;编辑&#39;?
的列提前致谢
答案 0 :(得分:1)
是的,您可以将列索引设置为隐藏从数据表导出的列,您必须在按钮属性中添加列选项,如下例所示: -
$('#datatable').dataTable({
"sScrollY": "350px",
"bPaginate": false,
"sDom": 'lfrtip<"clear spacer">T',
"oTableTools": {
"sSwfPath": "/flash/copy_cvs_xls_pdf.swf",
"aButtons": [
{
"sExtends": "copy",
"mColumns": [0, 1, 3, 4]
},
{
"sExtends": "csv",
"mColumns": [0, 1, 3, 4]
},
{
"sExtends": "pdf",
"mColumns": [0, 1, 3, 4]
},
{
"sExtends": "print",
"mColumns": [0, 1, 3, 4]
},
]
}
});
您可以访问这些网址以获取更多帮助 https://datatables.net/forums/discussion/3210/tabletools-how-to-hide-columns-when-exporting-copying
它可能对你有帮助。
答案 1 :(得分:1)
我更喜欢利用HTML来控制我的表的感觉,这减少了我需要为数据表的常见实现编写的Javascript,而不是使用特定的列号(columns: [0, 1, 2]
)我使用了jQuery选择器。
特别是在我的软件中,我有按钮动作的列,通常在
中看起来很悲惨$.extend(true, $.fn.dataTable.defaults, {
dom: 'Bfrtlip',
lengthMenu: [[10, 25, 50, 250, -1], [10, 25, 50, 250, "All"]],
buttons: [
{
extend: 'copy',
exportOptions: {
columns: "thead th:not(.noExport)"
}
},
{
extend: 'excel',
exportOptions: {
columns: "thead th:not(.noExport)"
}
},
{
extend: 'csv',
exportOptions: {
columns: "thead th:not(.noExport)"
}
},
{
extend: 'print',
exportOptions: {
columns: "thead th:not(.noExport)"
}
}
//'copy', 'excel', 'csv', 'print' // , 'pdf' - Wait for next PDFMake release because of this bug https://github.com/bpampuch/pdfmake/pull/443
]
});
现在我的桌子:
<table>
<thead>
<tr>
<th>First Column</th>
<th>Second Column</th>
<th class="noExcel">Column to Hide</th>
<th>Fourth Column</th>
</tr>
</thead>
<tbody>
<tr>
<td>First Column value</td>
<td>Second Column value</td>
<td>Column to Hide value</td>
<td>Fourth Column value</td>
</tr>
</tbody>
</table>
当调用$(“table”)。Datatables()时,它将具有Copy&gt;的按钮。 Excel&gt; CSV&gt;打印,但每个都会忽略第3列,其中包含“noExport”类。