jQuery Datatable导出到样式的excel

时间:2016-05-18 11:03:27

标签: jquery datatables

我已经使用了jQuery Datatable并导出了一个excel,Exporting工作正常,但我如何在excel中添加样式和格式或维护Datatable样式。

谢谢&此致

萨利姆汗

2 个答案:

答案 0 :(得分:1)

您可以使用内置样式。例如,42是粗体,绿色背景,黑色细边框。

$(' row:first c',sheet).attr(' s',' 42');

所有内置样式的列表都在这里:

https://datatables.net/reference/button/excelHtml5#Built-in-styles

答案 1 :(得分:0)

我必须通过在项目中确定datatables.js文件导出按钮文件来创建自己的自定义样式。

这是我的剧本:

buttons: [{
       //"colvis",
            extend: 'excelHtml5',
            text: 'Export to Excel',
            autoFilter: true,
            title: '',
            customize: function (xlsx) {
                var styles = xlsx.xl['styles.xml'];
            //custom font
           f1 = '<font><sz val="11" /><name val="Calibri" /><color rgb="FFFFFFFF" /><b /> 
                </font>';
           //custom colors
           //green 67
s1 = '<fill><patternFill patternType="solid"><fgColor rgb="C6E0B4" /><bgColor indexed="64" /></patternFill></fill>';
s2 = '<xf numFmtId="168" fontId="0" fillId="6" borderId="1" applyFont="1" applyFill="1" applyBorder="1" xfId="0" applyAlignment="1"><alignment horizontal="center"/></xf>';

styles.childNodes[0].childNodes[2].innerHTML = styles.childNodes[0].childNodes[2].innerHTML + s1;
styles.childNodes[0].childNodes[5].innerHTML = styles.childNodes[0].childNodes[5].innerHTML + s2;

 $('row c[r^="Z"]', sheet).attr('s', '67');
}]

在此站点上可以找到另一个参考: https://datatables.net/forums/discussion/45846/datatable-excel-export-how-can-we-apply-multiple-styles-to-same-cell