簡體   English   中英

在JQuery Datatable中選擇另一個頁面后如何重繪Datatable?

[英]How to redraw Datatable after selecting another page in JQuery Datatable?

我有一個DataTable,我從服務器端填充了數據。 表格已正確填充。 當我使用分頁時,服務器端會再次調用並為下一頁生成JSON數據。 數據正確。 但是桌子並沒有刷新。 根據數據表文檔,我知道我應該以某種方式使用draw()函數,但是我不知道在哪里調用它。

這是我的html表:

<table id="table-esemenyLista" class="table table-striped table-bordered table-hover"> <thead> <tr> <th>Id</th> <th>Dátum</th> <th>Esemény</th> </tr> </thead> <tbody id="esemenyListBody" class="text-primary"> </tbody> </table>

這是與其連接的Jquery-datatable代碼:

$( document ).ready(function() { esemenyListaTable = $("#table-esemenyLista").DataTable({ "processing" : true, "serverSide" : true, "paging" : true, "searching" : false, "lengthChange" : false, "drawCallback": function( settings ) { console.log('redrawn'); }, "ajax" : contextPath + "/historyContent.do" }); });

這是我第一次從server-sid獲得的JSON對象(顯示為正確):

{ "draw":1, "recordsTotal":16, "recordsFiltered":16, "data":[ [ 1, "2016-07-23", "text1" ], [ 12, "2016-10-04", "text2" ], [ 13, "2016-10-04", "text3" ], [ 16, "2016-10-18", "text4" ], [ 17, "2016-11-05", "text5" ], [ 18, "2016-11-14", "text6" ], [ 19, "2016-11-15", "text7" ], [ 20, "2016-11-16", "text8" ], [ 22, "2016-11-16", "text9" ], [ 23, "2016-11-17", "text10" ] ] }

轉到第二頁后,我得到以下JSON對象,該語法正確,但沒有出現:

{ "draw":1, "recordsTotal":16, "recordsFiltered":16, "data":[ [ 24, "2016-11-17", "text11" ], [ 25, "2016-11-23", "text12" ], [ 26, "2016-11-23", "text13" ], [ 27, "2016-11-23", "text16" ], [ 28, "2016-11-24", "text17" ], [ 29, "2016-11-25", "text18" ] ] }

drawCallBack函數僅在第一次寫入日志。 我應該如何調用draw方法? 在我在StackOverflow上再次提出與我的問題相關的其他問題之后,我知道我應該清除然后重新繪制表,但是如何? 有人可以幫我嗎?

您必須返回正確的draw索引。 因此,第二個必須是“繪制”:2。 我不知道您的服務器端語言,在PHP中,您可以使用$_GET['draw']獲取繪制索引

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM