2014-12-09 22 views
5

Ich benutze das neueste Datatables Plugin 1.10 Version.Jquery Datatables Format Zahlen

Ich habe 3 Spalten (0, 1, 2). Spalten 1 und 2 enthalten Zahlen, die wie formatiert werden soll:

1000 -> 1.000 
10000 -> 10.000 

ich die Dokumentation gesucht und fand ich diese relevanten Funktionen:

https://datatables.net/reference/option/formatNumber

https://datatables.net/reference/option/language.thousands

die Spalten, die brauchen automatisch formatiert werden?

Was ist die korrekte Verwendung der oben genannten Funktionen?

+1

sollten Sie Regex innerhalb 'mR verwenden Ender 'auf Ihre' Ziele [2] 'und formatieren Sie die Zahl jeweils mit Regex und binden Sie es an Tabelle abhängig von Ihrer Anforderung. ex: "render": Funktion (Daten) {// formatierten Wert zurückgeben;}}, –

+1

@supercool das funktioniert. Sie können eine Antwort schreiben, um als akzeptiert zu markieren – gosom

Antwort

1

Wie in meinem Kommentar erwähnt haben Sie so etwas wie diese

Innerhalb Datentabelle Initialisierung zu tun:

"aoColumnDefs": [ { 
     "aTargets": [ 2 ], 
    "mRender": function (data, type, full) { 
    var formmatedvalue=data.replace(//regex expression) 
     return formmatedvalue; 
    } 
}] 
1
$('#table-dg').dataTable({ 
    "columns": columnNames, 
    "columnDefs": [ 
    { 
     "render": function (datenter code herea, type, row) { 
     return commaSeparateNumber(data); 
    }, 
    "targets": [1,2] 
    }, 
    ] 
}); 

function commaSeparateNumber(val) { 
    while (/(\d+)(\d{3})/.test(val.toString())) { 
     val = val.toString().replace(/(\d+)(\d{3})/, '$1' + ',' + '$2'); 
    } 
    return val; 
} 
+5

Willkommen bei stackoverflow! Bei der Beantwortung von Fragen fügen Sie dem von Ihnen bereitgestellten Antwortcode am besten eine Beschreibung hinzu. –

6

Es ist eigentlich eine noch einfachere Art und Weise, dies zu tun, auch gefunden die Dokumentation der Datentabellen:

 "columns": [ 
      { "data": "ReceiptQuantity", render: $.fn.dataTable.render.number(',', '.', 2, '') }, 
      { "data": "ReceiptPrice", render: $.fn.dataTable.render.number(',', '.', 2, '') }, 
      { "data": "LineTotal", render: $.fn.dataTable.render.number(',', '.', 2, '') } 
     ], 
+1

Hier ist die Dokumentation: https://datatables.net/manual/data/renderers#Built-in-helpers. Ich hatte Schwierigkeiten, das zu finden, dachte also, die Verbindung könnte anderen helfen. –