【发布时间】:2017-12-06 13:29:28
【问题描述】:
我正在尝试将数值数据导出到 Excel。数字格式如下:
- 千位分组分隔符:“.”
- 小数点指示符:","
- 要显示的小数点数:“0”
- 前缀:“$”
并且页眉和页脚文本被格式化为粗体。
这是桌子:
<table id="idtablainforme_ventaporfamilia" class="table table-striped table-striped table-bordered nowrap dataTable">
<thead>
<tr>
<th>
<b>FAMILIA</b>
</th>
<th>
<b>VENTA</b>
</th>
</tr>
</thead>
<tfoot>
<tr>
<th><b>TOTAL</b></th>
<th><b>$12.925.150</b></th>
</tr>
</tfoot>
<tbody>
<tr><td>CHEQUERA MUJER</td><td>$5.231.760</td></tr>
<tr><td>CARTERA</td><td>$3.487.630</td></tr>
<tr><td>BILLETERA MUJER</td><td>$2.155.120</td></tr>
<tr><td>NECESER</td><td>$21.980</td></tr>
<tr><td>COSMETIQUERA</td><td>$10.990</td></tr>
<tr><td>SET DE VIAJE</td><td>$10.990</td></tr>
</tbody>
</table>
这是我的尝试:
<script>
$('#idtablainforme_ventaporfamilia').DataTable({
destroy: true,
"searching": false,
"paging": false,
"ordering": false,
"info": false,
"autowidth": false,
columns: [
{ data: "1", render: $.fn.dataTable.render.text() },
{ data: "2", render: $.fn.dataTable.render.number('.', ',', 0, '$') }
],
footerCallback: function (tfoot, data, start, end, display) {
var $th = $(tfoot).find('th').eq(1);
$th.text($.fn.dataTable.render.number('.', ',', 0, '$').display($th.text()))
},
dom: 'Bfrtip',
buttons: [
{
extend: 'excel',
footer: true,
title: 'INFORME DE VENTAS POR FAMILIA',
text: '<i class="fa fa-file-excel-o"></i>',
titleAttr: 'Exporta a EXCEL',
}
]
});
</script>
但它不会转换数字数据,并且页眉和页脚文本没有格式化为粗体。它们在 Excel 中以字符串形式导出,除了值 21.98 $、10.99 $ 和 10.99 $(尽管它们应该是 $21.980、$10.990 和 $10.990),如下所示:
FAMILIA VENTA
CHEQUERA MUJER $5.494.310
CARTERA $5.231.760
BILLETERA MUJER $2.155.120
NECESER 21.98 $
COSMETIQUERA 10.99 $
SET DE VIAJE 10.99 $
TOTAL $12.925.150
【问题讨论】:
标签: jquery excel datatables