Ich versuche, einen Brauch hinzuzufügen fancyNumber
Parser zu Tablesorter über Hier.
Wenn ich jedoch den Code wie folgt zu meiner Seite hinzufüge:
jQuery(document).ready( function() {
jQuery.tablesorter.addParser({
id: "fancyNumber",
is: function(s) {
return /^[0-9]?[0-9,.]*$/.test(s);
},
format: function(s) {
return jQuery.tablesorter.formatFloat( s.replace(/,/g,"") );
},
type: "numeric"
});
} );
Dann setze ich meine Tabellenüberschriften wie folgt:
"<th class="{"sorter": "fancyNumber"}"><strong>Calls</strong></th>" +
Ich muss den einfachen Anführungszeichen entgehen, da meine Tabellenköpfe in eine JavaScript-Variable eingeschlossen sind.
Dies funktioniert jedoch nicht und meine Zahlen mit Kommas werden immer noch falsch sortiert:
Calls
783
660
642,826
613
603,321
Antworten:
1 für die Antwort № 1Ich frage mich, ob das Metadaten-Plugin geladen wurde. Der Sortierer, der in der Kopfzeile wie oben gezeigt gesetzt wird, erfordert das Plugin.
Ich persönlich denke, eine bessere Methode wäre es, den Sortierer in der headers
Möglichkeit:
$("table").tablesorter({
headers : {
3 : { sorter: "fancyNumber" }
}
});
Hier ist eine Demo Ich habe eingestellt, um zu zeigen, dass es funktioniert.