datatable实现纵向单元格合并

转载:bird_tp@CSDN

实现效果如下:

在 drawCallback 函数里重画表格,引入以下代码即可

var api = this.api();
var rows = api.rows({ page: 'current' }).nodes();

var idx = 0;    // 第一列进行合并
var last = null;
var tr = null;
var ltd = null;

api.column(idx, { page: 'current' }).data().each(function (group, i) {
    tr = $(rows[i]);
    var td = $("td:eq(" + idx + ")", tr);
    if (last !== group) {
        td.attr("rowspan", 1);
        td.text(group);
        ltd = td;
        last = group;
        td.css("vertical-align", "middle");
    } else {
        ltd.attr("rowspan", parseInt(ltd.attr("rowspan")) + 1);
        td.remove();
    }
});

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注