js对table的td进行相同内容合并示例详解

复制代码 代码如下:

  function hb(){

  var tab = document.getElementById("subtable");

  var maxCol = 3, val, count, start;

  var ys="";

  for(var col = maxCol-1; col >= 0 ; col--) {

  count = 1;

  val = "";

  for(var i=0; i<tab.rows.length; i++){

  if(val == tab.rows[i].cells[col].innerHTML){

  count++;

  }else{

  if(count > 1){

  //合并

  start = i - count;

  if(ys=="#00FFFF"){

  ys="#EEEE00";

  }else{

  ys="#00FFFF";

  }

  tab.rows[start].cells[col].rowSpan = count;

  tab.rows[start].cells[1].style.backgroundColor=ys;//改变颜色

  // ys="#EEEE00";

  // tab.rows[i].cells[1].style.backgroundColor="#00FFFF";//改变颜色绿色

  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]);

  }

  }

  }

  }