问题描述
如何在导出时使用jQuery将dataTables中的所有tableHeader值更改为大写?
$('#tableFormData').DataTable({
"stateSave": true,dom: 'Bfrtip',buttons: [{
extend: 'pdfHtml5',title: 'Form Data.',orientation: 'landscape',pageSize: 'A4',pageMargins: [0,0],// try #1 setting margins
margin: [0,// try #2 setting margins
text: '<u>E</u>xport Page (PDF)',key: { // press E for export PDF
key: 'e',altKey: false
},content: [{
style: 'fullWidth'
}],styles: { // style for printing PDF body
fullWidth: {
fontSize: 18,bold: true,alignment: 'right',margin: [0,0]
}
},download: 'download',exportOptions: {
modifier: {
pageMargins: [0,// try #3 setting margins
margin: [0,// try #4 setting margins
alignment: 'center'
},body: {
margin: [0,0]
} // try #5 setting margins
/*,columns: [0,1] */ //column id visible in PDF,columnGap: 1 // optional space between columns
}
},'copy','csv','excel' //'pdf'
]
});
解决方法
您可以使用format.header
函数(它是Buttons附件提供的可用exportOptions
之一)来完成此操作:
format: {
header: function ( data,columnIdx ) {
return data.toUpperCase();
}
}
因此,您可以将其添加到现有的exportOptions
部分:
exportOptions: {
format: {
header: function ( data,columnIdx ) {
return data.toUpperCase();
}
},modifier: {
pageMargins: [0,0],// try #3 setting margins
margin: [0,// try #4 setting margins
alignment: 'center'
},...
}