项目当中表格均采用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;
}
}