jquery数据表插件保存文件为.xls

我正在使用jQuery数据表插件来显示数据。 我已经添加了文件保存的选项,如excel,csv和pdf。

虽然它允许我将表格内容保存为文件。 但是它在excel和csv的情况下都将文件保存为.csv

我想要有excelbutton来允许我将文件保存为.xls格式 。 如何在这个插件中实现这一点。

以下是我正在使用的代码

$('#datatable_tabletools').dataTable({ "sDom" : "<'dt-top-row'Tlf>r<'dt-wrapper't><'dt-row dt-bottom-row'<'row'<'col-sm-6'i><'col-sm-6 text-right'p>>", "aaSorting": [], "oTableTools" : { "aButtons" : ["copy", "print", { "sExtends" : "collection", "sButtonText" : 'Save <span class="caret" />', "aButtons" : ["csv", "xls", "pdf"] }], "sSwfPath" : "<?=$baseUrl?>static/js/plugin/datatables/media/swf/copy_csv_xls_pdf.swf" }, "fnInitComplete" : function(oSettings, json) { $(this).closest('#dt_table_tools_wrapper').find('.DTTT.btn-group').addClass('table_tools_group').children('a.btn').each(function() { $(this).addClass('btn-sm btn-default'); }); } }); 

这是可能的。 你必须使用"sFileName"属性。

要实现您的目标,请为Excel导出指定"sFileName": "*.xls"

这里是你的代码适应你想要的:

 $('#datatable_tabletools').dataTable({ "sDom" : "<'dt-top-row'Tlf>r<'dt-wrapper't><'dt-row dt-bottom-row'<'row'<'col-sm-6'i><'col-sm-6 text-right'p>>", "aaSorting": [], "oTableTools" : { "aButtons" : ["copy", "print", { "sExtends" : "collection", "sButtonText" : 'Save <span class="caret" />', "aButtons" : ["csv", { "sExtends": "xls", "sFileName": "*.xls", "bFooter": false }, "pdf"] }], "sSwfPath" : "<?=$baseUrl?>static/js/plugin/datatables/media/swf/copy_csv_xls_pdf.swf" }, "fnInitComplete" : function(oSettings, json) { $(this).closest('#dt_table_tools_wrapper').find('.DTTT.btn-group').addClass('table_tools_group').children('a.btn').each(function() { $(this).addClass('btn-sm btn-default'); }); } });