js 合并重复行

你还在为做报表时表格的前几列重复项合并而烦恼吗。

下面这串JS代码很好得为你服务,他能自动将重复的项进行合并 ,而不用预先知道显示结果集包含多少行


//名称重复行合并
function getColTable(tb_id,collen,k)
{
//tb_id  表id
//collen 从头开始合并几列
//k   从第几行开始合并
var tab = document.getElementById(tb_id);
var maxCol = collen;
var val;
var count;
var start;
var cellCount;
 for(var col = maxCol-1; col >= 0 ; col--)
 {
 count = 1; val = "";
 cellCount = 1;
 //alert(tab.rows.length)
 for(var i=k; i<tab.rows.length; i++)
 {
 if(val == tab.rows[i].cells[col].innerHTML && /[^\d]/.test(val) == true && val!="&nbsp;")
 {
 count++;
 }
 else{
   if(count > 1)
   {
    start = i - count;
    tab.rows[start].cells[col].rowSpan = count;
    for(var j=start+1; j<i; j++)
    {
     tab.rows[j].cells[col].style.display = "none";
     tab.rows[j].removeChild(tab.rows[j].cells[col]);
    }
    count = 1;
   }
   val = tab.rows[i].cells[col].innerHTML;
  }
 }
 if(count > 1 )
 {
 start = i - count;
 tab.rows[start].cells[col].rowSpan = count;
 for(var j=start+1; j<i; j++)
 {
 tab.rows[j].removeChild(tab.rows[j].cells[col]);
 }
 }
 }


}

原文地址:https://www.cnblogs.com/fangmin/p/2637784.html