2017-01-23 2 views
0

Ich versuche, meine jQuery-Datentabelle (unten) zu bestellen, kann aber nicht die erste Spalte in absteigender Reihenfolge sortieren. Ich habe versucht "order": [[0, 'desc']], aber es funktioniert nicht. The JS fiddle is here.jquery Databellen absteigend sortieren funktioniert nicht mit Option "order"

<table id="datatable-table" class="table table-striped table-hover"> 
    <thead> 
     <tr> 
      <th class="hidden-xs" style="width: 10%">Submission Date</ 
      <th class="hidden-xs" style="width: 10%">Start Date</th> 
      <th class="hidden-xs" style="width: 10%">End Date</ 
     </tr> 
    </thead> 
+0

Sie JSFiddle zeigt nichts. Wenn Sie es verwenden könnten, um einige Daten anzuzeigen, die hilfreich sind und Ihr Problem besser veranschaulichen. – annoyingmouse

+0

@annoyingmouse, sorry mein schlechtes. Ich habe jetzt auch im HTML-Teil kopiert. – omrakhur

+0

:-) Sie haben es vielleicht getan, aber der Link zeigt immer noch den gleichen Code ... – annoyingmouse

Antwort

0

Nach Ihrer JSFiddle möchten Sie die erste Spalte sortieren, wo Sie ein Datum mit dem d M Y Format sind die Ausgabe so ein Datum (UK 2017.01.01) als 01 Jan 2016 dargestellt werden? Das ist nicht ein Format, das Tables versteht so benötigen Sie eine Sortiermethode wie folgt hinzuzufügen:

jQuery.extend(jQuery.fn.dataTableExt.oSort, { 
    "dateNonStandard-asc": function (a, b) { 
    var x = parseInt(moment(a, "DD MMM YYYY").format("X"), 10); 
    var y = parseInt(moment(b, "DD MMM YYYY").format("X"), 10); 
    return (x == y) ? 0 : (x < y) ? 1 : -1; 
    }, 
    "dateNonStandard-desc": function (a, b) { 
    var x = parseInt(moment(a, "DD MMM YYYY").format("X"), 10) 
    var y = parseInt(moment(b, "DD MMM YYYY").format("X"), 10); 
    return (x == y) ? 0 : (x < y) ? -1 : 1; 
    } 
}); 

Dies ist ein Arbeits example und ich hoffe, es hilft.

+0

Aus irgendeinem Grund ist der JSFiddle weg, aber du hast die Idee, die ich hoffe. – annoyingmouse

Verwandte Themen