/ / Tablesorter: jak ignorować tekst w komórkach - jquery

Tablesorter: jak zignorować tekst w komórkach - jquery

Podczas korzystania z tablesorter nie mogę uporządkować poprawnie, gdy dodaję coś, by powiedzieć numer w komórce tabeli. na przykład. 30 MB, 50 MB itp.

Czy mimo to mówię sortowanie, aby zignorować tekst w komórce, tj. MB w tym przykładzie?

Również o stylizacji i tagach w linii: Jak prawidłowo uporządkować poniższe elementy?

<td><span>upto</span> 50 <br /> MB</td>

Biorąc pod uwagę tekst "upto" i "MB" oraz <br /> etykietka.

Odpowiedzi:

3 dla odpowiedzi № 1

Spróbuj przekazać opcję textExtraction do metody tableSorter.

Coś w linii:

var extractData = function(node)  {
return $(node).text().replace(/[^0-9.]/g, "");
}

$(document).ready(function()     {
$("#yourTable").tableSorter( {
textExtraction: extractData
} );
} );

Link do DOC: http://tablesorter.com/docs/

Sprawdź przykład @:http://tablesorter.com/docs/example-option-text-extraction.html


4 dla odpowiedzi nr 2

Znalazłem "problem" został rozwiązany w rozwidlonej / zaktualizowanej wersji kodu tablesorter hostowany w witrynie jQuery. Rozwidlona wersja jest tutaj: http://mottie.github.com/tablesorter/docs/index.html


0 dla odpowiedzi № 3

Znaleziono inny sposób robienia tego: zmienić kody w następujący sposób:

<td>upto<br /><span>50</span>MB</td>

zastosuj następujące wyodrębnianie tekstu:

textExtraction: {
3: function(node) {
return $(node).find("span:last").html();
}
}

0 dla odpowiedzi nr 4

Jak podano w innych odpowiedziach, używam tablesortera funkcja textExtraction

Znalazłem to przydatne sortuj atrybut rozwiązanie, gdy mamy do czynienia z tabelą zawierającą złożone i proste znaczniki kolumn:

$(".tablesorter").tablesorter({
textExtraction: function(node) {
// look for a "sort" attribute in <td> element
var sort = node.getAttribute("sort");
if(sort){
//use it for sorting if found
return sort;
}else{
//default sorting behaviour if not found
return node.innerHTML;
}
}
});