合并单元格式

1.上下合并(列合并)

   

        $.fn.MergeColumns = function() {
return this.each(function() {
for (var i = $(this).find('tr:first td').size() - 1; i >= 0; i--) { //获取表格td的数量进行循环
var s = null;
var prevTd = null;
$(this).find('tr').each(function() {
var td = $(this).find('td').eq(i);
var s1 = td.text();
if (s1 == s) { //相同即执行合并操作
td.hide(); //hide() 隐藏相同的td ,remove()会让表格错位 此处用hide
prevTd.attr('rowspan', prevTd.attr('rowspan') ? parseInt(prevTd.attr('rowspan')) + 1 : 2); //赋值rowspan属性
}
else {
s = s1;
prevTd = td;
}
});
}
});
}

调用:

$("#TableId").MergeColumns();

调用前:

调用后:

2.左右合并(行合并)

        $.fn.MergeRows = function() {
return this.each(function() {
$(this).find('tr').each(function() {
var s = null;
var prevTd = null;
for (var i = 0; i < $(this).find('td').size(); i++) {
var td = $(this).find('td').eq(i);
var s1 = td.text();
if (s1 == s) { //相同即执行合并操作
td.hide(); //hide() 隐藏相同的td ,remove()会让表格错位 此处用hide
prevTd.attr('colspan', prevTd.attr('colspan') ? parseInt(prevTd.attr('colspan')) + 1 : 2); //赋值colspan属性
}
else {
s = s1;
prevTd = td;
}
}
});
});
}

调用:

$("#TableId").MergeRows ();

调用前:

调用后:

原文地址:https://www.cnblogs.com/ericyi/p/2185139.html