dataTables自增序号的实现

项目当中表格均采用datatables这个插件,踩了不少坑,这里不做参数配置的介绍,只介绍自增序号在前端分页以及后端分页时的实现方式,亲测都是可用的,官网所使用的方法我没实验成功。

  • 前端分页
    首先设置一个空列,然后配置fnDrawCallback这个参数,代码如下:
fnDrawCallback : function () {
        let api = this.api();
        api.column(0).nodes().each(function(cell, i) {
            cell.innerHTML = i + 1;
        });
    };
  • 后端分页
    实现方式一:依然是配置fnDrawCallback这个参数,代码如下
fnDrawCallback : function () {
        let api = this.api();
        let startIndex = api.context[0]._iDisplayStart;//获取本页开始的条数
        api.column(0).nodes().each(function(cell, i) {
            cell.innerHTML = startIndex + i + 1;
        });
    };

实现方式二:在aoColumns参数中配置,代码如下

        {
            sTitle: '序号',
            data: null,
            className: 'text-center whiteSpace',
            render:function(data,type,row,meta) {
                return meta.row + 1 +
                meta.settings._iDisplayStart;
            }
        }

你可能感兴趣的:(dataTables自增序号的实现)