2016-07-29 13 views
0

Ich habe eine bestimmte Operation auf einer Datentabelle durchgeführt. Während des Abschlusses wird ein Ajax aufgerufen, auf dessen Erfolg fnDraw() aufgerufen wird und er aktualisiert die Datentabelle direkt auf die Startseite der Datentabelle. Dies führt zu einer schlechten Benutzererfahrung, da der Benutzer erneut zu der bestimmten Seite gehen muss, auf der er die Operation ausgeführt hat. Ich habe verschiedene Möglichkeiten ausprobiert, aber es scheint der einzige Weg zu sein, den Standard datatables.js zu ändern.Datatable aktualisiert die erste Seite

Bitte helfen Sie bei der Lösung des Problems.

+0

Haben Sie ajax.reload() mit resetPaging als false ausprobiert? – Thennarasan

Antwort

0

Verwendung

table.fnPageChange(3,true);


Wo 3 ist die Seitennummer und der zweite Parameter fragt Datentabelle neu zu zeichnen.

0

Für jQuery DataTables 1.9, verwenden Sie fnStandingRedraw Plugin.

jQuery.fn.dataTableExt.oApi.fnStandingRedraw = function(oSettings) { 
    if(oSettings.oFeatures.bServerSide === false){ 
     var before = oSettings._iDisplayStart; 

     oSettings.oApi._fnReDraw(oSettings); 

     // iDisplayStart has been reset to zero - so lets change it back 
     oSettings._iDisplayStart = before; 
     oSettings.oApi._fnCalculateEnd(oSettings); 
    } 

    // draw the 'current' page 
    oSettings.oApi._fnDraw(oSettings); 
}; 


$(document).ready(function() { 
     var table = $('#example').dataTable() 
     table.fnStandingRedraw(); 
    }); 

Für jQuery Tables 1.10+, rufen Sie einfach draw(false) die Seite Zurücksetzen zu vermeiden.

var table = $('#example').DataTable() 

/* ... */ 

table.draw(false); 
Verwandte Themen