2014-09-22 52 views
0

使用數據表插件進行分頁。 我試圖讓我的服務器端分頁工作,但是首先,我面臨的問題是無法在「顯示1到15個條目」文本中顯示totalRecords條目。 IM以此來顯示所有的記錄:如何獲得在分頁期間顯示的總記錄

var resultsTable = tableEl.dataTable({ 
"aaData": tableData, 
    "aoColumns": tableColumns, 
    "aaSorting": [[1,'asc']], 
    // "bServerSide": true, 
     "processing": true, 
    "serverSide": true, 
    "sAjaxDataProp": "api/1.0/accounts", 
    "bProcessing": true, 
    "pagingType": "simple_numbers", 
    "bLengthChange": false, 
    "bAutoWidth": false, 
    "bScrollCollapse": true, 
    "iTotalRecords": 34, 
    "iTotalDisplayRecords":15, 
    "iDisplayLength": 15 
     }); 

,但它仍然顯示我「顯示1到15 15的項目」,而不是「顯示1到34的15項」的。任何想法,我在這裏想念什麼?謝謝,提前!

回答

0

我的理解是,iTotalRecordsiTotalDisplayRecords是從服務器返回的值,而不是您在初始化過程中設置的值。

您可以添加生成服務器端數據的代碼嗎?你怎麼實際分頁源數據?

在你accounts方法,你應該返回一個JSON對象,它看起來是這樣的:

return Json(new 
    { 
    param.sEcho, 
    iTotalRecords = totalRecords, 
    iTotalDisplayRecords = totalFilteredRecords, 
    aaData = result 
}, JsonRequestBehavior.AllowGet); 

哪裏iTotalRecords是總的,未經過濾的記錄數和iTotalDisplayRecords是過濾的記錄數。 result包含15行數據,因爲此時您將使用數據表參數iDisplayStartiDisplayLength執行分頁查詢以生成數據。當您將此json對象返回給數據表時,您現在擁有所有信息以正確顯示頁面。

相關問題