2010-01-10 10 views
1

J'utilise le tablesorter et plugin Pager d'ici: http://tablesorter.com/docs/jQuery tablesorter pager- Placez la première ligne affichée

Je veux la table pour afficher les résultats commencent à un certain défini indicielle par exemple, si mon index est 14, Je veux que la table affiche la 'page' des résultats 11-20, donc ma ligne est montrée, plutôt que de commencer à la page par défaut 1, montrant les résultats 1-10.

Je possède ce travail comme prévu, mais avec un code assez laid ..

D'abord, je travaille sur la page qui doit être affiché (C#):

int index = 24; 
int pageToDisplayFirst = 1; 
while (true) 
{ 
    if (index - 10 > 0) 
    { 
     pageToDisplayFirst++; 
     index -= 10; 
    } 
    else 
    { 
     break; 
    } 
} 

Je mis la page par cette boucle terrible:

for(var i = 0; i < <%= pageToDisplayFirst %>; i++) { 
    $(".next").trigger("click"); 
} 

Voici le code d'initialisation jQuery, rien de spécial:

$("table.tablesorter").tablesorter({ 
    cssAsc: 'sortasc', cssDesc: 'sortdesc', cssHeader: 'unsorted', 
    sortList: [[0,0]] 
}).tablesorterPager({container: $("#pager")}); 

Donc, quelqu'un peut-il suggérer une solution plus élégante et efficace?

Répondre

2

je ne sais pas C#, mais vous pouvez simplement faire ceci:

pageToDisplayFirst = Math.floor(index/itemsPerPage + 1)

//found this code in the plungin source 
this.defaults = { 
    size: 10, 
    offset: 0, 
    page: 0, <<<< 
    totalRows: 0, 
    totalPages: 0, 
    container: null, 
    cssNext: '.next', 
    cssPrev: '.prev', 
    cssFirst: '.first', 
    cssLast: '.last', 
    cssPageDisplay: '.pagedisplay', 
    cssPageSize: '.pagesize', 
    seperator: "/", 
    positionFixed: true, 
    appender: this.appender 
}; 

vous peut-être ceci fonctionne

$("table.tablesorter").tablesorter({ 
    cssAsc: 'sortasc', cssDesc: 'sortdesc', cssHeader: 'unsorted', 
    sortList: [[0,0]] 
}).tablesorterPager({container: $("#pager"), page: <%= pageToDisplayFirst %>}); 
+0

je me suis assis et a regardé fixement ces options par défaut pour aaagess, pourquoi "page" n'a pas cliqué? : p Merci, ça aide les tas! – elwyn

Questions connexes