Javascript 数据表使用数据类型导出到excel

Javascript 数据表使用数据类型导出到excel,javascript,jquery,excel,datatables,Javascript,Jquery,Excel,Datatables,我有一张桌子: Name Reg.number Limit Date Jon 123455665 100 000.00 24.09.2018 Foo 123423423 55 000.00 23.09.2018 我使用datatables创建excel,它工作正常,但我需要在导出的excel中指定数据类型。 目前在excel中,所有数据都被认为是“通用的”,但我需要它来认识到: Jon = text Reg.number =

我有一张桌子:

Name     Reg.number   Limit        Date
Jon      123455665    100 000.00   24.09.2018
Foo      123423423    55 000.00    23.09.2018
我使用datatables创建excel,它工作正常,但我需要在导出的excel中指定数据类型。 目前在excel中,所有数据都被认为是“通用的”,但我需要它来认识到:

Jon = text
Reg.number = text
Limit = Number (In perfect scenario with thousand separator and 2 digits after .)
Data = date
以下是我目前的代码:

<script>

$(document).ready(function() {
    $('#datatable').DataTable();

    $.fn.dataTable.moment( 'D.M.YYYY' );

    var table = $('#datatable-buttons').DataTable({
        lengthChange: false,
        buttons: ['excel'],
    });

    table
        .order( [4 , 'desc'] )
        .draw();

    table.buttons().container()
        .appendTo('#datatable-buttons_wrapper .col-md-6:eq(0)');
} );

$(文档).ready(函数(){
$('#datatable')。datatable();
$.fn.dataTable.moment('D.M.yyy');
变量表=$(“#数据表按钮”)。数据表({
长度变化:错误,
按钮:['excel'],
});
桌子
.顺序([4'描述']))
.draw();
table.buttons().container()
.appendTo(“#datatable-buttons_wrapper.col-md-6:eq(0)”;
} );

所以我现在的输出是: Excel,其中所有数据都被视为“一般”

我期望的输出是: Excel,其中根据数据类型考虑所有列。文本、数字(十进制)、日期


我真的无法在datatables文档中找到答案。它们实际上有1-2个示例,说明不了多少,因此我希望代码示例,而不是我过去几个小时一直在阅读的文档链接。

如前所述,我相信您需要将值转换为可识别的内容。问题在于Excel(或其他读者),他们当然无法计算出“55000.00”应该被视为一个数字。作为一个人,我也不知道该如何解释:)

导出选项:{
格式:{
正文:函数(数据、行、列、节点){
开关(列){
案例2:
返回数据。替换(/,','))
打破
案例3:
返回时刻(数据为'DD.MM.YYYY')。格式为'MM/DD/YYYY')
打破
违约:
返回数据
打破
}
}
}    
}    

根据您的需要修改此选项。制作了一个小提琴->

您正在使用哪些版本的按钮、buttons.html5和DataTables?DataTables 1.2.1的DataTables 1.10.15按钮尝试升级到最新的1.5.3。excel导出有了很大的改进。如果不起作用,你可以强制列类型。谢谢你的建议。我怎样才能强制列类型?是的,我在控制台中得到了大量的错误。我知道了。返回时刻(数据'DD.MM.YYYY')。格式('MM/DD/YYYY')这在Excel中仍然被视为一个常规。请参见此->此->和此->日期在Excel中一直是一个难题。这不是一个简单的任务,你必须转换成一个固定的数字(不是“正常”的时间值),然后调整buttons.html5.js,如论坛链接中所述。