Wie listet man eine Liste auf
- Vorherige Seite Filter Dropdown-Menü
- Nächste Seite Sortieren Sie den Tisch
Lernen Sie, wie Sie mit JavaScript HTML-Listen sortieren.
Klicken Sie auf die Schaltfläche, um die Liste alphabetisch zu sortieren:
- Oslo
- Stockholm
- Helsinki
- Berlin
- Rome
- Madrid
Erstellen Sie eine Sortierfunktion
Beispiel
<ul id="id01"> <li>Oslo</li> <li>Stockholm</li> <li>Helsinki</li> <li>Berlin</li> <li>Rome</li> <li>Madrid</li> </ul> <script> function sortList() { var list, i, switching, b, shouldSwitch; list = document.getElementById("id01"); switching = true; /* Erstellen Sie einen Zyklus, der fortgesetzt wird, bis keine Elemente mehr vertauscht werden müssen: */ while (switching) { // Erklärung: Es gibt keine Elemente, die vertauscht werden müssen switching = false; b = list.getElementsByTagName("LI"); // Alle Listeinträge durchlaufen: for (i = 0; i < (b.length - 1); i++) { // Erklärung: Das aktuelle Element und das nächste Element sollten nicht vertauscht werden shouldSwitch = false; /* Überprüfen Sie, ob das nächste Element mit dem aktuellen Element vertauscht werden sollte: */ if (b[i].innerHTML.toLowerCase() > b[i + 1].innerHTML.toLowerCase()) { /* Wenn das Alphabet der nächsten Zeile vor dem aktuellen Element folgt, wird es als zu tauschen markiert und der aktuelle Zyklus wird verlassen: */ shouldSwitch = true; break; } } if (shouldSwitch) { /* Wenn ein Umtausch markiert wurde, wird der Umtauschvorgang ausgeführt und ein Umtausch wird markiert: */ b[i].parentNode.insertBefore(b[i + 1], b[i]); switching = true; } } } </script>
Sortierung in aufsteigender und absteigender Reihenfolge
Wenn Sie die Schaltfläche zum ersten Mal klicken, ist die Sortierreihenfolge in aufsteigender Reihenfolge (A bis Z).
Klicken Sie erneut, um die Sortierreihenfolge in absteigender Reihenfolge (Z bis A) zu ändern:
- Oslo
- Stockholm
- Helsinki
- Berlin
- Rome
- Madrid
Beispiel
<ul id="id01"> <li>Oslo</li> <li>Stockholm</li> <li>Helsinki</li> <li>Berlin</li> <li>Rome</li> <li>Madrid</li> </ul> <script> function sortListDir() { var list, i, switching, b, shouldSwitch, dir, switchcount = 0; list = document.getElementById("id01"); switching = true; // Setzt die Sortierungsrichtung auf aufsteigend: dir = "asc"; // Erzeugt einen Zyklus, der bis zu dem Punkt fortgesetzt wird, an dem es keine zu tauschenden Elemente mehr gibt: while (switching) { // Zunächst erklären: Es gibt derzeit keine zu tauschenden Elemente: switching = false; b = list.getElementsByTagName("LI"); // Alle Listeinträge durchlaufen: for (i = 0; i < (b.length - 1); i++) { // Zunächst erklären: Das aktuelle Element und das nächste Element sollten nicht vertauscht werden: shouldSwitch = false; /* Überprüft nach der Sortierungsrichtung (aufsteigend oder absteigend), ob das nächste Element mit dem aktuellen Element vertauscht werden sollte: */ if (dir == "asc") { if (b[i].innerHTML.toLowerCase() > b[i + 1].innerHTML.toLowerCase()) { /* Wenn das Alphabet der nächsten Zeile vor dem aktuellen Element folgt, wird es als zu tauschen markiert und der aktuelle Zyklus wird verlassen: */ shouldSwitch = true; break; } } if (b[i].innerHTML.toLowerCase() < b[i + 1].innerHTML.toLowerCase()) { /* Wenn das Alphabet der nächsten Zeile nach dem aktuellen Element folgt, wird es als zu tauschen markiert und der aktuelle Zyklus wird verlassen: */ shouldSwitch = true; break; } } } if (shouldSwitch) { /* Wenn ein Umtausch markiert wurde, wird der Umtauschvorgang ausgeführt und ein Umtausch wird markiert: */ b[i].parentNode.insertBefore(b[i + 1], b[i]); switching = true; // Jedes Mal, wenn ein Umtausch vorgenommen wird, wird switchcount um 1 erhöht: switchcount++; } else { /* Wenn keine Umtauschvorgänge stattgefunden haben und die Richtung "aufsteigend" ist, wird die Richtung auf "absteigend" gesetzt und der while-Zyklus wird erneut ausgeführt. */ if (switchcount == 0 && dir == "asc") { dir = "desc"; switching = true; } } } } </script>
Liste nach Nummer sortieren
Beispiel
if (Number(b[i].innerHTML) > Number(b[i + 1].innerHTML)) { shouldSwitch = true; break; }
- Vorherige Seite Filter Dropdown-Menü
- Nächste Seite Sortieren Sie den Tisch