2017-06-13 43 views
0

我试图实现服务器端分页理念,为我的表(jQuery的(v1.12.4),数据表(v1.10.15))无法将数据加载到数据表中使用服务器端分页

按数据表服务器端分页文档

我已经启用Serverside集团分页处理真实与指定的sPaginationType与阿贾克斯一起。

Custom Data Source Property article中,提到我们需要使用dataSrc Option作为字符串来获取来自不同源属性的数据,在本例中为demo,但它可以是任何值,通过使用嵌套属性标准的点状Javascript对象表示法。

我已经根据上述要点使用了dataSrc,即基于我的json响应的“dataSrc”:“data”

但是数据未被加载。

我的表只载入批准按钮(我已经在列部分中定义)其余列是空的。 - 召集数据不在表格中呈现。

Refer Output 2 image

由于我已经使用延期加载第一页返回空数据。请参阅输出1图像。

我刚才提到的所有下面提到的文章

Custom data source property dataSrc and pagination issue

Datatables server side processing pagination issue

的代码如下所示片断,请大家帮忙

$('#vschildtable').DataTable({ 
     "language": { 
      "processing": "Please 
      wait - LOADING SCAN Result...", " 
      emptyTable " : " 
      Currently no 
      data found in this project " }, " 
      bJQueryUI " : true, " 
      paging " : 
      true, 
      "sPaginationType": "full_numbers", 
      "processing ": true, 
      "serverSide": true, 
      "columns": [{ 
        "defaultContent": "", 
        "visible": false 
       }, { 
        "defaultContent": "", 
        "visible": false 
       }, { 
        "defaultContent": "" 
       }, { 
        "defaultContent": "" 
       }, { 
        "defaultContent": "" 
       }, { 
        data: null, 
        defaultContent: ' < 
         button type = "button" 
        class = "btn-approve label label-link bg-green " > Approve < /button> 
        ' } ], "deferLoading" : 57, "ajax" : { "url" : "emppage?empID=" + 
        encodeURIComponent(empID) + "&projectId=" + 
        encodeURIComponent(projectID) + "&subProjectId=" + 
        encodeURIComponent(subProjectID) + "&pageNo=" + 
        encodeURIComponent(offset), 
        type: 'POST', 
        datatype: "jsonp", 
        "dataSrc": "data" 
       } 
      }); 

JSON响应:

[{ 
    "message":"SUCCESS", 
    "data":"{\"data\":\[{\"projectId\":1,\"subProjectId\":1,\"empID\":765,\"empName\":\"Arjun\",\"empIDVersion\":\"1%3A4.1.4\",\"fkempID\":7781,\"tmpempID\":354999,\"noOfDept\":1,\"rowNo\":1,\"totalnoOfDept\":1},{\"projectId\":1,\"subProjectId\":1,\"empID\":765,\"empName\":\"Arjun\",\"empIDVersion\":\"4.0.18.1\",\"fkempID\":7781,\"tmpempID\":355000,\"noOfDept\":1,\"rowNo\":2,\"totalnoOfDept\":1},{\"projectId\":1,\"subProjectId\":1,\"empID\":765,\"empName\":\"Arjun\",\"empIDVersion\":\"4.2.1\",\"fkempID\":7781,\"tmpempID\":355001,\"noOfDept\":1,\"rowNo\":3,\"totalnoOfDept\":1}\]}" 
}] 
+0

有什么错误?服务器代码? – Sebastianb

回答

0

就我所见,服务器返回的数据中缺少信息。 DataTables在服务器端模式下运行时需要服务器的某些特定数据(draw,recordsFiltered等)。您可以检查here

此外,您应该columns阵列中的data属性添加到每个对象,指定您希望在该列来呈现数据,即名称:

columns:[ 
    { data:'projectId' } 
    { data:'subPorjectId'} 
    ... 
] 

这告诉数据表哪些数据显示在哪一列。

希望它有帮助!

相关问题