我在使用datatables时,使用的是当前最新的1.10.21,起初整合时发现服务端分页有点问题,在点击下一页的是可以的,但点击上一页就不行了,页面也没有重新渲染;
前前后后折腾了几天,刚开始以为是项目的其他js影响,当删除所有其他无关的还是不行,后来发现服务端返回的字段draw有问题,我一直以为draw是当前页的意思,
但根据我的测试,draw是页面渲染的次数(或者是点击分页的次数),其实我们只需要获取前端请求draw的参数直接返回就可以。
这里官网也有说明,可惜我折腾了好久才找到


http://datatables.club/manual/server-side.html


另外记录一下我遇到的问题:

显示中文问题(国际化),在js里初始

$.fn.dataTable.defaults.oLanguage = {

      "sProcessing": "处理中...",

      "sLengthMenu": "显示 _MENU_ 项结果",

      "sZeroRecords": "没有匹配结果",

      "sInfo": "显示第 _START_ 至 _END_ 项结果,共 _TOTAL_ 项",

      "sInfoEmpty": "显示第 0 至 0 项结果,共 0 项",

      "sInfoFiltered": "(由 _MAX_ 项结果过滤)",

      "sInfoPostFix": "",

      "sSearch": "搜索:",

      "sUrl": "",

      "sEmptyTable": "表中数据为空",

      "sLoadingRecords": "载入中...",

      "sInfoThousands": ",",

      "oPaginate": {

          "sFirst": "首页",

          "sPrevious": "上页",

          "sNext": "下页",

          "sLast": "末页"

      },

      "oAria": {

          "sSortAscending": ": 以升序排列此列",

          "sSortDescending": ": 以降序排列此列"

      }

};


分页信息显示 undefined

$.fn.dataTable.defaults.fnFormatNumber = function(v){return v};




切换tab时datatables变形样式错乱

 $('a[data-toggle="tab"]').on('shown.bs.tab', function (e) {

      //当切换tab时,强制重新计算列宽

      $.fn.dataTable.tables( {visible: true, api: true} ).columns.adjust();

 } );


显示分页样式pagingType


numbers - 只有只有数字按钮 simple - 只有上一页、下一页两个按钮 ,

simple_numbers - 除了上一页、下一页两个按钮还有页数按钮,Datatables默认是这个

full - 有四个按钮首页、上一页、下一页、末页,

full_numbers - 除首页、上一页、下一页、末页四个按钮还有页数按钮,

first_last_numbers - 除首页、末页两个按钮还有页数按钮

 

我用的是    "pagingType" : "full_numbers",



分页数-下拉选择分页的位置


下面是设置在table的下面

"dom":'<t><filp>',

官网:http://datatables.club/reference/option/dom