javascript - ejemplo - title tag html
¿Cómo hacer que jQuery Tablesorter clasifique de forma descendente por defecto? (3)
No puedo entender esto. Esta pregunta también se realizó aquí http://www.nabble.com/TableSorter-plugin---default-column-sort-DESC-instead--How--to25180761s27240.html#a25180761 sin respuesta.
He intentado
$.tablesorter.defaults.sortInitialOrder = ''desc'';
y alterar el archivo jquery.tablesorter.js para que aparezca por defecto en ''desc'' pero no funciona. Cuando hago clic en los encabezados de columna, la primera ordenación sigue ascendiendo, por lo que el usuario tiene que hacer doble clic para descender los valores.
¿Cómo puedo hacer que Tablesorter ordene de forma descendente por defecto?
Parece un error en el código del orden de las tablas, o estoy entendiendo mal lo que se supone que hace el parámetro sortInitialOrder. En la línea 536 establece el orden de clasificación mirando el número de veces que se ha ordenado la columna y tomando el valor mod 2. También debe tener en cuenta el valor de sortInitialOrder.
Cambiar línea 536 de
this.order = this.count++ % 2;
a
this.order = this.count++ == 0 ? this.order : (1 - this.order);
Y agregue después de esta línea (para que el primer clic en una columna diferente le dé el valor predeterminado)
$headers.not($cell).each( function() {
this.count = 0;
});
y cambiar la línea 421 desde
o.count = s[1];
a
o.order = o.count = s[1];
de modo que el orden inicial se invalida si se aplica una orden de clasificación.
Luego puede usar el parámetro sortInitialOrder para tablesorter para configurar un primer orden de clasificación predeterminado para la columna. Cualquier orden provista en la lista de ordenamiento anulará la ordenación de orden de clase provista para toda la tabla.
Tenga en cuenta que esto se aplica a Tablesorter 2.0.
Pruebe la última versión del sitio de tablesorter: parece que se ha solucionado en algún lugar entre la versión 2.0.3 y 2.0.5.
<script type="text/javascript">
$(document).ready(function()
{
$("#theTable").tablesorter({
sortInitialOrder: ''desc'',
sortList: [[3,1]] // etc.
});
}
);
</script>
... que funcionó con la última versión de tablesorter, pero no con la anterior que tenía. ¡Espero eso ayude!
Simplemente use esto, el segundo elemento de la matriz es el orden de clasificación (0 = ascendente, 1 = descendente):
.tablesorter({ sortList: [[0, 1]] });