Hallo miteinander,
sieht jemand von euch zufällig, warum die folgende Tabellensortierung ab dem zweiten Klick auf ein th-Element alle Zeilen dupliziert? Zumindest bewusst wird das Click-Event nicht mehrfach ausgelöst... Ich kenne mich noch nicht so gut mit jQuery aus und würde mich über konstruktive Hinweise oder Lesetipps sehr freuen!
sieht jemand von euch zufällig, warum die folgende Tabellensortierung ab dem zweiten Klick auf ein th-Element alle Zeilen dupliziert? Zumindest bewusst wird das Click-Event nicht mehrfach ausgelöst... Ich kenne mich noch nicht so gut mit jQuery aus und würde mich über konstruktive Hinweise oder Lesetipps sehr freuen!
Code:
var sortTable = function (tableHeader) { var columnName = $(tableHeader).attr('id'); var sortOrder; if ($(tableHeader).is('.asc')) { $(tableHeader).removeClass('asc'); $(tableHeader).addClass('desc'); sortOrder = -1; } else { $(tableHeader).removeClass('desc'); $(tableHeader).addClass('asc'); sortOrder = 1; } $(tableHeader).siblings().removeClass('asc'); $(tableHeader).siblings().removeClass('desc'); var rows = $('tbody > tr'); rows.sort(function (a, b) { var aValue = $(a).children('td.' + columnName).text().toUpperCase(); var bValue = $(b).children('td.' + columnName).text().toUpperCase(); if ($.isNumeric(aValue) && $.isNumeric(bValue)) { return sortOrder === 1 ? (aValue - bValue) : (bValue - aValue); } else { return (aValue < bValue) ? -sortOrder : ((aValue > bValue) ? sortOrder : 0); } }); $('tbody').empty().append(rows); };
Kommentar