繁体   English   中英

在Datatable Excel中,导出零值在PHP中出现错误

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM