Ich habe Schwierigkeiten, eine JS-Funktion, die Paging auf alle DataTables auf meiner Seite umschalten wird. Was mache ich falsch?Javascript Umschalten zwischen allen Datentabellen
Hinweis: Immer, wenn ich togglePaging()
in der Chrome-Konsole ausführen, bekomme ich als Antwort.
var globalPaging = true;
function togglePaging() {
globalPaging = !globalPaging;
$('.dataTable').each(function(){
var oTable = $(this).dataTable();
var oSettings = oTable.fnSettings();
oSettings.aoColumns[1].bPaginate = globalPaging;
var oTableDT = $(this).DataTable();
oTableDT.draw();
});
}
$(document).ready(function(){
$('table.toDataTable').DataTable({
"bPaginate": globalPaging
});
});
Hier ist eine Demo: jsfiddle.net/8n1nj0bu
Update: Hier ist die Lösung, die ich mit ging, von Teddy Antwort abgeleitet: jsfiddle.net/jyf8h2je
Also, ich nehme an, es ist möglich, Zustand zu speichern, die Zerstörung zu tun, dann erneut anwenden, um zu verhindern, dass das Umschalten von Paging den angewandten gesuchten Filter verwirft. Recht? (Wenn es einfach ist, könnten Sie bitte zeigen, wie das geht?) – synaptik
... eigentlich sollte ich einfach 'search()' verwenden, um die Suchbegriffe zu erhalten, dann die destroy/paging-toggle ausführen und dann die Suche verwenden Begriffe in einem 'search ()' Aufruf, gefolgt von 'draw()'. –
synaptik
@synaptik Wenn Sie suchen wollen, ändern Sie nur den Inhalt der Tabelle, also sollte draw() gut funktionieren. – teddy