2016-11-22 30 views
0

上午。最初,在加載頁面電網獲取數據庫中的所有記錄,然後它限制了記錄值10.所以頁面看起來不響應,在它裝載這麼多data.please能幫我解決這個問題秒的幾分之幾? 我想在最初加載時將記錄數限制爲10。所以網格會有響應。我的代碼 例如:最初在加載頁面電網獲取所有記錄的數據庫,然後它用數據表插件做分頁和排序限制記錄值爲10

var options = { 
bsort: true, 
"bFilter": false, 
"sPaginationType": "full_numbers", 
aoColumnDefs: [ 
{ 
aTargets: [ 0 ], 
bSortable: false, 
}, 
{ 
aTargets: [ 9 ], 
bSortable: false, 
} 
] 
}; 
$('#Table_ID').DataTable(options); 

由於提前

回答

0

您需要定義一個「Ajax」的網址爲您的Web服務,並設置了「服務器端」選項設置爲true。還要注意的是使用DataTable的AJAX功能時,它預計在「數據」的響應數據屬性,像這樣:

返回的JSON - 對象數組符號。

{ "data": [{...}, {...}, {...}]} 

返回的JSON - 排列標記的數組:

{ "data": [[...], [...], [...]] } 

隨着返回的JSON的第一個樣式,您將需要指定「列」選項,這樣你就可以把它定義映射到海灣命名的屬性設置該數組中包含的對象的「data」屬性。

最後,將「serverside」設置爲true,您需要在服務器上執行所有排序,篩選等。

編輯:今天不會打字。在這個地方丟失的話。

+0

感謝THR答覆。讓我試試這個。有沒有其他建議沒有ajax。當我完成完整的代碼時,我必須重做所有的代碼。只需要首先將d限制限制爲10 –

+1

對於您所描述的用例,使用服務器端處理方式不會有更好的解決方案。你可以在這裏找到一個例子:https://datatables.net/examples/data_sources/server_side.html – Mike

+0

@KishoreJn在DataTables中有一個延遲加載選項,你可以從第一個頁面開始,使用「view」類似object (jsp,php,...等),因此您不需要在初始頁面加載時進行服務器端調用。我沒有用它自己,所以不能幫助太多,但我所理解的是,它可以提供按需加載,然後以後做客戶端排序和過濾。如果您沒有大型數據集或計算密集型篩選,則您的應用程序可通過客戶端排序/篩選進行更好的擴展 – Adrian

相關問題