Ich möchte eine Tabelle Spaltenstrings Werte sortieren, indem Sie auf Tabellenkopf klicken. Hier habe ich alphabetisch sortiert. Bitte ändern Sie diesen Code in String Spaltensortierung.Wie sortiere ich eine Tabellenspalte, indem ich auf die Kopfzeile in Jquery klicke?
enter code here
var sortOrder = -1;
$(".sort").click(function() {
sortOrder *= -1;
sortTable($(this));
});
function sortTable(element) {
var tbody = element.parent();
var colIndex = element.index() -1;
tbody.find('tr').sort(function (a, b)
{
$('td', a).eq(colIndex).text() === "" ? $('td', a).eq(colIndex).text("0") : $('td', a).eq(colIndex).text();
if (sortOrder === 1)
{
return parseInt($('td', a).eq(colIndex).text(), 10) - parseInt($('td', b).eq(colIndex).text(), 10);
}
else
{
return parseInt($('td', b).eq(colIndex).text(), 10) - parseInt($('td', a).eq(colIndex).text(), 10);
}
}).appendTo(tbody);
tbody.find('tr').each(function() {
$(this).removeClass();
zebra = zebra === 'odd' ? 'even' : 'odd';
$(this).addClass(zebra);
$(this).find("td").eq(colIndex).text() === 0 ? $(this).find("td").eq(colIndex).text(""):$(this).find("td").eq(colIndex).text();
});
}
Haben Sie versucht, ein "Datatable" zu implementieren? Ist eine gute Bibliothek und diese Funktionen bereits vorhanden, einfach und lustig: https://datatables.net/ –