Jquery Datatable导出Excel如何删除首行表头及调整列头对齐方式
jQuery Datatable excelHtml5 导出功能解决方案
问题1:删除导出Excel文件的第一行表头
提供两种可选实现方案:
- 方案1:直接关闭表头导出(最简方案)
在按钮配置中新增header: false参数即可,导出时会直接忽略表头行,无需额外逻辑。 - 方案2:自定义导出逻辑删除指定行(适用于需要保留部分表头、有特殊处理需求的场景)
借助customize回调函数操作导出的工作表数据,删除第一行内容。
问题2:为部分列的表头设置对齐方式
通过customize回调可以操作Excel单元格样式,指定对应列的表头单元格添加对齐属性即可,支持左对齐、居中、右对齐三种常见对齐方式。
完整配置代码
buttons: [ { extend: 'excelHtml5', text: '<i class="fa fa-file-excel" aria-hidden="true"></i>Eksport', footer: true, className: 'btn btn-success my-5', // 选用方案1关闭表头直接取消下面这行的注释即可 // header: false, customize: function (xlsx) { var sheet = xlsx.xl.worksheets['sheet1.xml']; // ========== 方案2删除第一行表头逻辑 ========== var rows = sheet.getElementsByTagName('row'); if (rows.length > 0) { rows[0].parentNode.removeChild(rows[0]); } // ========== 表头对齐设置逻辑 ========== // 示例:设置第1列表头左对齐,第2、3列表头居中,第4列表头右对齐 // 列索引从0开始,0对应A列、1对应B列,以此类推 $('row:first c', sheet).each(function (colIndex) { let align = ''; switch(colIndex) { case 0: // 第1列 align = 'left'; break; case 1: // 第2列 case 2: // 第3列 align = 'center'; break; case 3: // 第4列 align = 'right'; break; } if (align) { // excelHtml5默认样式索引:1=左对齐 2=居中 3=右对齐 $(this).attr('s', align === 'center' ? 2 : align === 'right' ? 3 : 1); } }); } } ]
小提示:如果使用
header: false方案删除表头,设置对齐的逻辑需要把row:first改为你要设置对齐的行对应选择器即可。
内容的提问来源于stack exchange,提问作者Elvin
相关产品推荐
相关产品推荐

