2010-11-10 10 views
13

Ich verwende das jQuery tablesorter-Plugin. Ich möchte speichern, wie ein Benutzer die Tabelle auf der Seite sortiert und beim nächsten Laden der Seite automatisch sortiert hat. Dazu muss ich zuerst das sortList-Objekt finden, das speichert, wie die Tabelle sortiert ist. Für das Leben von mir kann ich nicht herausfinden, wie man es bekommt. Die Dokumentation scheint nichts dabei zu haben und ich habe alles versucht, was mir einfällt.jQuery tablesorter So finden Sie das sortList-Objekt

Antwort

28

Sie müssen Ihr Tabellenelement an das Ereignis tabellensorter sortEnd binden. Alle Daten für dieses Objekt werden an den Handler übergeben. Anschließend können Sie die aktuelle Sortier erhalten wie folgt:

var currentSort; 

$("#yourtableId").tablesorter({ 
    // initialization 
}).bind("sortEnd", function(sorter) { 
    currentSort = sorter.target.config.sortList; 
}); 
+0

Das funktionierte perfekt. Danke Bryan! – Chris

+0

Kein Problem. Froh, dass ich helfen konnte. :) – Bryan

+0

Liebe es. Liebe alles daran. Das ist alles :) – HeavenCore

1

Es könnte ein bisschen weniger Overhead sein, nur die letzte Art zu speichern, wenn Sie es so brauchen:

lastSortList=$("#mytable")[0].config.sortList; 

Denken Sie daran, um die Variable zu deklarieren in der richtige Umfang natürlich.

(ich glaube, das Problem des questioneer wahrscheinlich war, dass er das DOM-Element über [0] bekommen musste und nicht die jQuery-Element.)

-1

das ist, wie ich es geschafft:

<?php 
// Set session variables 
$_SESSION["sortlistsessie"] = "[[0,0],[2,1]]"; 
?> 


<script language="javascript" type="text/javascript"> 

//document.cookie="TestCookie3=[[0,0],[2,1]]"; 
$(document).ready(function() { 
// extend the default setting to always include the zebra widget. 
$.tablesorter.defaults.widgets = ['zebra']; 
// extend the default setting to always sort on the first column 
$.tablesorter.defaults.sortList = <?php print_r($_SESSION["sortlistsessie"] 
);   ?>//  <?php $_SESSION["sortlistsessie"];?>; //<?php echo  
$_COOKIE["TestCookie3"]; ?>; 
// call the tablesorter plugin 
$("#searchTable").tablesorter(); 
}); 
</script> 
Verwandte Themen