2016-04-01 7 views
2

Ich exportiere Excel-Blatt aus Datentabelle mit Plugins. Im Blatt kommen alle Werte korrekt außer Null (0) Werte.In Datatable Excel Export Null Wert kommt falsch in PHP

Hier ist der Code für die Datentabelle.

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


        }); 

Ich habe den Screenshot des Fehlers beigefügt. enter image description here

+0

müssen Sie den Export-Code des Plugins überprüfen und dort ändern müssen. auch andere Werte werden als Zahl behandelt, außer 0? ist es? –

+0

Wissen, ob andere Werte als Zahl oder Zeichenfolge behandelt werden. Und können Sie mir bitte helfen, welche Änderungen ich an Plugins vornehmen muss? –

Antwort

0

Verwenden Sie Ihre Plugins, um den Feldtyp auf einen Zahlenwert festzulegen.

Es sieht so aus, als ob 0 als String interpretiert wird, was die Ausrichtung nach links erklären könnte.

+0

Wie verwendet man das Plugin, um den Feldtyp auf einen Zahlenwert zu setzen. Kannst du bitte erklären. –

0

Sie müssen einige Änderungen in der Datei buttons.html5.min.js vornehmen. Finden Sie das Wort excelHtml5 in buttons.html5.min.js und in Push-Methode "Nummer" === Typ von a [c] || a [c] .match & & g.trim (a [c]) .übereinstimmung (/^-? \ d + (. \ d +)? $ /) & & "0"! == a [c]. charAt (0) ersetzen "0" zu
oder einem anderen Art und Weise nur eine Bedingung hinzuzufügen! == (a [c] .charAt (0) & & a [c] .length> 1) es wird funktionieren. Hoffe es wird Ihre Anforderung erfüllen. Alles Gute .. !!

0

Verwenden Sie einfach die CSV-Taste anstelle der xcel Taste und es funktioniert gut: https://datatables.net/extensions/buttons/examples/html5/simple.html

Entweder

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

oder für einen persönlicheren Ansatz (unter der Annahme font-genial, und ein wenig CSS Anwendung damit es ein wenig schöner aussieht)

//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'); 
+0

Links zu möglichen Lösungen sind immer willkommen, aber bitte fügen Sie einige Details für zukünftige Besucher hinzu, falls der Link entfernt wird. –