[英]In Datatable Excel Export Zero Value is Coming wrong in PHP
我正在从使用插件的数据表中导出Excel工作表。 在工作表中,除零(0)值外,所有值均正确输入。
这是数据表的代码。
$('#example').DataTable({
//"scrollY": 300,
//"scrollX": true
dom: 'Bfrtip',
buttons: [
{ extend: 'excelHtml5', text: 'Get Excel' }
],
"sScrollY" : "300",
"sScrollX" : true,
"bScrollCollapse" : true,
"bSort" : true,
"iDisplayLength": 5
});
尝试使用您的插件将字段类型设置为数字值。
看起来0被解释为字符串,这可以解释左对齐。
您必须在buttons.html5.min.js文件中进行一些修改。 在buttons.html5.min.js和推送方法“ number” === typeof a [c] ||中找到单词excelHtml5。 a [c] .match && g.trim(a [c])。match(/ ^-?\\ d +(。\\ d +)?$ /)&& “ 0” !== a [c] .charAt(0)将“ 0”替换为0
或者以另一种方式只是添加一个条件!==(a [c] .charAt(0)&& a [c] .length> 1)即可。希望它能满足您的要求。 祝一切顺利..!!
只需使用CSV按钮而不是xcel按钮,它就可以正常工作: 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');
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.