【发布时间】:2017-04-20 06:37:51
【问题描述】:
我正在尝试使用导出选项创建一个支持多个页脚的 Datatable PDF。
但它只允许第一行页脚在导出的 PDF 中
请告诉我是否可以在数据表中创建多个页脚? 和 如果是,那么如何在java脚本中实现?
我正在分享代码
在 Java Script 中创建数据表并在表中添加 tfoot
'<tfoot id="reportTblFoot' + chartIndex+ '">'+
'</tfoot>'
表格页脚变量
var tfoot='#reportTblFoot'+chartIndex;
数据添加到页脚
var footer1 = $("<tr />");
footer1.append("<td style='border:none;font-style:italic;line-height:0;font-size:10px'>* Applicable row 1</td>");
footer1.append("<td style='display:none'/>");
footer1.append("<td style='display:none'/>");
$(tfoot).append(footer1);
var footer2 = $("<tr />");
footer2.append("<td style='border:none;font-style:italic;line-height:0;font-size:10px'>** Not Applicable row 2</td>");
footer2.append("<td style='display:none'/>");
footer2.append("<td style='display:none'/>");
$(tfoot).append(footer2);
var footer3 = $("<tr />");
footer3.append("<td style='border:none;font-style:italic;line-height:0;font-size:10px'>*** Not Applicable row 3</td>");
footer3.append("<td style='display:none'/>");
footer3.append("<td style='display:none'/>");
$(tfoot).append(footer3);
var percSumNote = $("<tr />");
percSumNote.append("<td style='border:none;'><font size='1' color='grey'>**** Not Applicable row 4</font></td>");
percSumNote.append("<td style='display:none'/>");
percSumNote.append("<td style='display:none'/>");
$(tfoot).append(percSumNote);
在数据表属性中为 footer
应用 TRUEbuttons: [ {
extend: 'pdf',
filename:fileName,
message:tableSubTitle,
title: tableTitle,
footer:true,
pageSize : "A3",
customize: function (doc) {
doc.defaultStyle.alignment = 'left';
doc.styles.message = {
alignment: 'center'
}
doc.styles.table = {
alignment: 'center',
width: '100%',
}
doc.defaultStyle.fontSize = 16;
doc.styles.tableFooter.fontSize = 8;
doc.pageMargins = [ 130, 20, 130, 20 ];
doc.content.forEach(function(item) {
if (item.table) {
// Set width for 3 columns
item.table.widths = [350, 100, 100,'*']
}
});
}
}]
在下载的 PDF 中只添加第一个页脚
【问题讨论】:
-
@davidkonrad 是的,我用谷歌搜索了其中的一些链接,但没有找到解决方案。
-
还有this explanation from the author 或者这个github issue 或者this another issue ...?谷歌的第一击?
-
您可以使用包含多行的单元格设置单个页脚的样式,但要使其看起来很棒或作为多个页脚,您需要在 pdfmake 组件中进行一些认真的调查,我猜...
标签: javascript datatable datatables