【发布时间】:2020-04-20 00:45:58
【问题描述】:
我有一个带有导出到 excel 按钮的数据表,我正在尝试自定义。 我环顾四周,看看如何定制,发现了一些,但仍然有问题。
当您导出到 excel 时,第一行似乎是页面标题。我正在尝试使这一行加粗;如果可能的话,将文本替换为页面标题以外的其他内容。
这是我看到并尝试修改以实现我需要的内容:
buttons: [
{
extend: 'excelHtml5',
customize: function ( xlsx ){
var sheet = xlsx.xl.worksheets['sheet1.xml'];
// jQuery selector to add a border
//$('row c[r*="0"]', sheet).attr( 's', '25' );
//$('row c[r^="C"]', sheet).attr( 's', '2' ); // third column is bold
// Trying to make first row bold, this makes last row bold
$('row c[r*="0"]', sheet).attr( 's', '2' );
$(sheet.body)
.css('font-size', '10pt');
$(sheet.body).find('table')
.addClass('compact')
.css('font-size', 'inherit');
},
exportOptions: {
columns: [0, 1, 2]
},
},
此外,在应用格式时,我们似乎使用带有第一个参数“s”和数字的“attr”。我如何知道 25 表示边框,2 表示粗体?
我不明白如何操纵以下内容来影响样式更改:
$('row c[r*="0"]', sheet).attr( 's', '2' );
$('row c[r^="C"]', sheet).attr( 's', '25' );
【问题讨论】:
-
你试过了吗,
row c[r*="A"], sheet).attr( 's', '2' ); -
$('row:first c', sheet).attr( 's', '2' );可能也可以,我没有在这台机器上安装它,所以我无法测试。 =/
标签: jquery datatables export-to-excel