在数据表Excel中导出零值在PHP中出错

我从数据表导出Excel工作表使用插件。 在工作表中,除零(0)值外,所有值都正确。

这里是datatable的代码。

$('#example').DataTable({ //"scrollY": 300, //"scrollX": true dom: 'Bfrtip', buttons: [ { extend: 'excelHtml5', text: 'Get Excel' } ], "sScrollY" : "300", "sScrollX" : true, "bScrollCollapse" : true, "bSort" : true, "iDisplayLength": 5 }); 

我附上了错误的屏幕截图。 在这里输入图像说明

尝试使用您的插件将字段types设置为数字值。

看起来像0被解释为string,这可以解释左alignment。

您必须在buttons.html5.min.js文件中进行一些修改。 在buttons.html5.min.js和push方法“number”中findexcelHtml5这个单词=== typeof a [c] || 一个[c] .match && g.trim(a [c])。match(/ ^ – ?\ d +(。\ d +)?$ /)&& “0” !a a [c] .charAt(0)将“0”replace为0
或另一种方式只是添加一个条件!==(a [c] .charAt(0)&& a [c] .length> 1)它将工作,希望它会满足您的要求。 祝一切顺利..!!

只需使用CSVbutton,而不是xcelbutton,它工作正常: https ://datatables.net/extensions/buttons/examples/html5/simple.html

  $(document).ready(function() { $('#example').DataTable( { dom: 'Bfrtip', buttons: [ 'copyHtml5', 'excelHtml5', 'csvHtml5', 'pdfHtml5' ] } ); } ) 

或者为更个性化的方法(假设字体真棒,并应用一点CSS来使它看起来更好)

  //initialise the main table table = $('#report').DataTable( { "bFilter": true, "bSort": true, "bInfo": true, "scrollX": scrollX, lengthChange: true, fixedHeader: { header: true, footer: footerFixed }, buttons: [ { extend: 'copy', text: '<i class="fa fa-files-o"></i>', titleAttr: 'Copy' }, { extend: 'csv', text: '<i class="fa fa-file-excel-o"></i>', titleAttr: 'CSV', title: 'Subscribers' }, { extend: 'colvis', text: '<i class="fa fa-columns"></i>', titleAttr: 'Columns' }, ], } ); table.buttons().container() .appendTo( '#report_length' ); $('#report_length > label').css('padding-right', '10px');