So sortieren Sie Datentabellen mit Datum in absteigender Reihenfolge

Lesezeit: 3 Minuten

Benutzeravatar von Sujitha M
Sujitha M

Ich möchte die Datensätze mithilfe von Datentabellen mit Standardreihenfolge basierend auf einer meiner Zeilen mit Datum und Uhrzeit in absteigender Reihenfolge anzeigen. Bitte helfen Sie mir bei der Bearbeitung der jquery-Struktur dafür

Geben Sie hier die Bildbeschreibung ein

  • und wo ist die jQuery-Struktur, bei deren Bearbeitung wir helfen sollen?

    – Jeff

    14. Juni 2016 um 14:01 Uhr

  • Übrigens, soweit ich weiß, sollte es bei der Sortierung nach Datum und Uhrzeit einige Einschränkungen geben, wie Datatable den Sortierprozess handhabt

    – Lelio Faieta

    14. Juni 2016 um 14:02 Uhr

  • Ich habe es in meinem Projekt getan. Das Datumsformat sollte JJJJ-MM-TT sein. sortiere es *”order”: [[ 3, “desc” ]]* und verstecke das td, th zeige nichts an.

    – ThataL

    4. März 2019 um 10:56 Uhr

Am einfachsten ist es, einen versteckten Zeitstempel vor dem Datum in jedem TD-Tag der Spalte hinzuzufügen, zum Beispiel:

<td class="sorting_1">
    <span style="display:none;">1547022615</span>09/01/2019  09:30
</td>

Bei der standardmäßigen Zeichenfolgenreihenfolge würde ein Zeitstempel die Spalte so anordnen, wie Sie es möchten, und sie wird nicht angezeigt, wenn sie im Browser gerendert wird.

  • Hallo Joan, ich habe diese Methode ausprobiert, aber es funktioniert nicht. Es wurde angenommen 1547022615 als String statt als Zahl. Irgendeine Idee?

    – Sam

    23. Juli 2019 um 4:05 Uhr

  • In extremen Fällen müssten Sie es nur mit Nullen auffüllen, damit die Unix-Zeichenfolge richtig verglichen werden kann, richtig, @Sam?

    – mickmackusa

    1. August 2020 um 5:37 Uhr


  • @mickmackusa tolle Idee. Auffüllen mit Null sollte funktionieren. Die einzige Einschränkung besteht darin, eine vorgegebene Länge (dh die Größe der Zeichenfolge) zu haben, aber es könnte funktionieren. Danke für das Teilen!

    – Sam

    1. August 2020 um 8:13 Uhr

  • Vielen Dank, es funktioniert perfekt, Prost!

    – Soufiane Neffar

    20. Januar 2021 um 1:44 Uhr

  • Anstatt ein neues Feld hinzuzufügen, fügen Sie im vorhandenen Datumsfeld Folgendes hinzu: <td data-sort="@item.Created.ToString("yyyyMMddHHmmssffff")">

    – mchar

    6. Mai 2021 um 14:45 Uhr

Benutzeravatar von ReSedano
ReSedano

Ich hatte das gleiche Problem. Ich habe das Sortier-Plugin date-eu verwendet, um Daten im Format TT/MM/JJ zu sortieren, und ich habe die folgende JS-Datei eingefügt:

<script src="https://cdn.datatables.net/plug-ins/1.10.11/sorting/date-eu.js" type="text/javascript"></script>

Das hat bei mir funktioniert.

$('#exemple').DataTable({
    "order": [[ 3, "desc" ]], //or asc 
    "columnDefs" : [{"targets":3, "type":"date-eu"}],
});

Lesen Sie auch diesen Beitrag zu Stackoverflow: Sorting date in datatable

Ich habe die Lösung mit der Sortierung des Datums bekommen. Fügen Sie einfach Typ als “Datum” hinzu und in den Zielen müssen Sie die Spaltennummer (Zählung beginnend bei 0) mit Datentabellenoptionen übergeben. Und legen Sie ‘Reihenfolge’ mit Spaltennummer und Formattyp fest. Siehe unten Code,

columnDefs: [ { type: 'date', 'targets': [4] } ],
order: [[ 4, 'desc' ]]

  • Sie können es auch direkt in den Spalten verwenden. columns: [ { "data": "MyDateField", "type":"date" } ]

    – jplara

    30. Oktober 2019 um 21:12 Uhr

  • Können Sie Ihr Datumsformat mit dieser Lösung definieren? ZB ‘tt-mm-jjjj’.

    – mark_b

    29. September 2021 um 14:05 Uhr

Benutzeravatar von Plasebo
Plasbo

Bitte beziehen Sie sich auf diesen Stift: https://codepen.io/arnulfolg/pen/MebVgx

Es verwendet //cdnjs.cloudflare.com/ajax/libs/moment.js/2.8.4/moment.min.js und //cdn.datatables.net/plug-ins/1.10.12/sorting/datetime-moment. js zum Sortieren von Datentabellen

Um die Tabelle standardmäßig zu sortieren, verwenden Sie:

$.fn.dataTable.moment('DD/MM/YY');
$('#example').DataTable({ 
       "order": [[ 3, "desc" ]] 
    }); 

Einfach hinzufügen "type":"date" direkt in den Spalten wie { "data": "MyDateField", "type":"date" }.

Benutzeravatar von mind
Geist

<td class="sorting_1">
    <span style="display:none;">201909010930</span>09/01/2019  09:30
</td>

Formatieren Sie Ihr Datum in jjjjMMttHHmm. Dies ist Ihr sortierbarer Zeitstempel. Dann blenden Sie das formatierte Datum mit display none aus. Dies ist eigentlich eine weitere Erklärung der Antwort von joan16v

Benutzeravatar von ThivankaW
ThivankaW

Ich weiß, das ist ein alter Thread. aber man kann es grundsätzlich verwenden “asortieren”

$('#exemple').DataTable({

    "aaSorting": [[3,'desc']],
});

  • Oder order: [[ 3, 'desc' ]] seit DataTables v1.10 .

    – S. Esteves

    30. Oktober 2019 um 6:25 Uhr


1404450cookie-checkSo sortieren Sie Datentabellen mit Datum in absteigender Reihenfolge

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy