Sortieren einer Tabelle mit jQuery-basierend auf dem Datum-Werte
Ich bin ein problem sehr ähnlich zu dieser Frage: jQuery Tabelle Sortieren
Wenn der Date-header geklickt wird, möchte ich die Tabelle Sortieren von Zeilen auf der Grundlage der Daten, die nicht aus dem text.
Habe ich basiert mein code auf dieses jsFiddle http://jsfiddle.net/gFzCk/ das war eine der Antworten auf die obige Frage, und die gilt es zu Sortieren, aber es behandelt das Datum als normalen text, nicht als Datum.
Normalerweise würde ich in der Lage sein, ändern Sie die original-code auf meine Bedürfnisse anzupassen, aber dieser code ist nur ein wenig über mich.
Hier mein jsFiddle http://jsfiddle.net/S6dM6/
HTML
<table>
<tr>
<th id="dateHeader">Date</th>
<th>Phone #</th>
<th id="city_header">City</th>
<th>Speciality</th>
</tr>
<tr>
<td>01/02/2013</td>
<td>00001111</td>
<td>Amsterdam</td>
<td>GGG</td>
</tr>
<tr>
<td>24/02/2013</td>
<td>55544444</td>
<td>London</td>
<td>MMM</td>
</tr>
<tr>
<td>28/02/2013</td>
<td>33332222</td>
<td>France</td>
<td>RRR</td>
</tr>
<tr>
<td>13/02/2013</td>
<td>88884444</td>
<td>Auckland</td>
<td>AA</td>
</tr>
<tr>
<td>04/02/2013</td>
<td>11115555</td>
<td>New York</td>
<td>BBB</td>
</tr>
</table>
JS
var table = $('table');
$('#dateHeader')
.wrapInner('<span title="sort this column"/>')
.each(function(){
var th = $(this),
thIndex = th.index(),
inverse = false;
th.click(function(){
table.find('td').filter(function(){
return $(this).index() === thIndex;
}).sortElements(function(a, b){
return $.text([a]) > $.text([b]) ?
inverse ? -1 : 1
: inverse ? 1 : -1;
}, function(){
//parentNode is the element we want to move
return this.parentNode;
});
inverse = !inverse;
});
});
Und diese js-Datei verwiesen:
https://raw.github.com/padolsey/jQuery-Plugins/master/sortElements/jquery.sortElements.js
Nur für den Fall, Sie gehen, um vorschlagen, eine Art der Sortierung der Tabelle plugin, beachten Sie, dass mein Ergebnis nicht Sortieren, wenn die Kopfzeile geklickt wird, wird die Sortieren-Funktion aufgerufen wird, werden von verschiedenen Orten in meinem javascript, ich bin nur mit diesem Klick Beispiel, wie eine einfache Ausgangspunkt, um das Konzept zu arbeiten und einen einfachen Weg, um diese Frage stellen.
- Sie suchen
Date.parse
, developer.mozilla.org/en-US/docs/JavaScript/Reference/... , jedoch mitdd/MM/yyyy
- format, werden Sie brauchen, um einige weitere Verarbeitung glaube ich, alsDate.parse
erwartetMM/dd/yy(yy)
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ändern Sie Ihre
sortElements
Methode wie diese: