Anzahl der Teilnahmen in Teilnhemerliste sortierbar
This commit is contained in:
parent
63ed731720
commit
11e1e7462a
|
@ -34,7 +34,7 @@
|
||||||
<% if (teilnehmer.probe) { %>
|
<% if (teilnehmer.probe) { %>
|
||||||
<span style="color: <%= teilnehmer.anwesenheit <= 3 ? 'green' : 'red' %>">
|
<span style="color: <%= teilnehmer.anwesenheit <= 3 ? 'green' : 'red' %>">
|
||||||
<% } %>
|
<% } %>
|
||||||
(<%= teilnehmer.anwesenheit %>)
|
<%= teilnehmer.anwesenheit %>
|
||||||
</span>
|
</span>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -49,17 +49,21 @@ function sortTable(spaltenIndex) {
|
||||||
let isAscending = table.getAttribute('data-sort') === 'asc';
|
let isAscending = table.getAttribute('data-sort') === 'asc';
|
||||||
|
|
||||||
rows.sort((rowA, rowB) => {
|
rows.sort((rowA, rowB) => {
|
||||||
let cellA = rowA.cells[spaltenIndex].innerText.toLowerCase();
|
let cellA = rowA.cells[spaltenIndex].innerText.trim();
|
||||||
let cellB = rowB.cells[spaltenIndex].innerText.toLowerCase();
|
let cellB = rowB.cells[spaltenIndex].innerText.trim();
|
||||||
|
|
||||||
if (!isNaN(cellA) && !isNaN(cellB)) {
|
// Überprüfen, ob die Zellen numerisch sind
|
||||||
// Wenn die Zellen Zahlen sind, sortiere nach Zahlengröße
|
let numA = parseFloat(cellA);
|
||||||
cellA = parseFloat(cellA);
|
let numB = parseFloat(cellB);
|
||||||
cellB = parseFloat(cellB);
|
|
||||||
|
// Wenn beide Zahlen sind, sortiere numerisch
|
||||||
|
if (!isNaN(numA) && !isNaN(numB)) {
|
||||||
|
return isAscending ? numA - numB : numB - numA;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (cellA < cellB) return isAscending ? 1 : -1;
|
// Andernfalls sortiere alphabetisch
|
||||||
if (cellA > cellB) return isAscending ? -1 : 1;
|
if (cellA < cellB) return isAscending ? -1 : 1;
|
||||||
|
if (cellA > cellB) return isAscending ? 1 : -1;
|
||||||
return 0;
|
return 0;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue