jQuery   发布时间:2022-04-19  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了jquery – 自定义数据源属性dataSrc和分页问题大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用jQuery DataTables和服务器端处理模式.但我面临数据表的问题,我在Datatables文档中搜索了所有内容,但找不到我的答案.

所以问题是我从服务器获得响应,就像这样:

正如您在此JSON响应中所看到的,数据表需要JSON在data.data中以在数据表中设置此数据源有一个属性Custom Data Property并且它正常工作并显示行.现在问题是数据表没有虑来自JSON的分页参数,这就是它显示的原因:

请注意,我无法从服务器端更改JSON响应.

更新:
这是js调用脚本:

$(document).ready(function () {
   $("#example").dataTable({
      "ajax": {
          url: app.getApiUrlWithAccessToken('lead/get_all'),dataSrc: function(json){
              return json.data.data;
          }
      },"lengthMenu": [1,2,5,10,15],"columns": [
          { "data": "first_name" },{ "data": "last_name" },{ "data": "title" },{ "data": "email" },{ "data": "city" },{ "data": "status" }
      ],"processing": true,"serverSide": true
   });
});

解决方法

原因

在服务器端处理模式下,DataTables在返回的数据中需要certain structure.参数draw,records@R_686_10586@l和recordsFiltered应该是顶级属性.您的响应将这些参数作为数据的子属性,而不是DataTables要查找的位置.

将参数draw,records@R_686_10586@l和recordsFiltered设置为DataTables期望的JSON响应的顶级属性.

使用以下代码获取ajax.dataSrc选项:

dataSrc: function(json){
   json.draw = json.data.draw;
   json.records@R_686_10586@l = json.data.records@R_686_10586@l;
   json.recordsFiltered = json.data.recordsFiltered;

   return json.data.data;
}

DEMO

有关代码和演示,请参见this jsFiddle.

大佬总结

以上是大佬教程为你收集整理的jquery – 自定义数据源属性dataSrc和分页问题全部内容,希望文章能够帮你解决jquery – 自定义数据源属性dataSrc和分页问题所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。