一个JAVASCRIPT实用函数,完成合并表格中列中具有相同内容的列单元格的功能

原创 2004年10月09日 16:17:00

代码如下:
/*****************************************
名称:MergeTableCell
功能:合并表格中特定列中具有相同内容的列单元格(向下合并)
参数:
TheTable:Table的ID(直接传ID即可,不用加其它父限定)
ColumnIndex:从零开始的要合并列的索引
******************************************/
function MergeTableCell(TheTable,ColumnIndex)
{
 
   var RowCount = TheTable.rows.length;
   var CurrentRow = null;
   var NextRow = null;
   var MergeTag = 0;
   var StartMergeCell = 0;
   var EndMergeCell = 0;
   var NextCell = null;
   var Iter = 0;
  
 
   for(var i=0;i<RowCount;i=Iter)
   {
      MergeTag = 0;
      StartMergeCell = 0;
      EndMergeCell = 0;
      CurrentRow = TheTable.rows(i);
      window.alert(CurrentRow.cells(ColumnIndex).innerText);
      if ((CurrentRow.cells(ColumnIndex) != null)&&(i != RowCount-1))
      {                  
         for(var j=i+1;j<RowCount;j++)
         {
            NextRow = TheTable.rows(j);
            NextCell = NextRow.cells(ColumnIndex);
            var strNext = new String();
            strNext = NextCell.innerText;
            var strCurr =new String();
            strCurr = CurrentRow.cells(ColumnIndex).innerText;
            if ( strNext !=  strCurr)
            {
              break;
            }
            else
            {
               if (j==i+1)
               {
                 StartMergeCell = j;
               }
               EndMergeCell = j;
               MergeTag++;
            }
             
         }
       
         if (MergeTag != 0)
         {
            CurrentRow.cells(ColumnIndex).rowSpan = MergeTag + 1;
            for(var k=StartMergeCell;k<=EndMergeCell;k++)
            {
               TheTable.rows(k).deleteCell(ColumnIndex);
            }
         }
      }
       Iter = Iter + MergeTag + 1 ;
 

   }
      
}


很烂的算法,希望大家不要介意!red_smile.gif

Javascript合并表格相同内容单元格示例

效果图: HTML代码: 表格相同内容合并 合并前: a 1 2 3 4 5 a 1 2 ...
  • apollokk
  • apollokk
  • 2013年08月11日 01:48
  • 3617

Crystal Report 水晶报表如何实现类似表格单元格合并的功能

效果图:报表设计如下:实现的方法很简单,打开“节专家”,选择你的组页眉,右边“公用”中选中“延伸到后续节”...
  • griefforyou
  • griefforyou
  • 2004年11月03日 16:42
  • 4753

excel 将A列相同的值对应的B列的单元格进行合并,并保留单元格内容

说明:现在A列有许多单元格的值是相同的,现在需要将相同值对应的B列的单元格进行合并,如: A列  B列 aa a1 aa a2 bb a3 bb a4 最后的结果为(a1/a2在一个单...
  • pclzr
  • pclzr
  • 2012年12月13日 21:24
  • 4558

Javascript学习笔记part1(Table单元格相同数据自动合并)

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接和...
  • u011859137
  • u011859137
  • 2016年05月25日 21:34
  • 1243

HTML TBLE表格重复内容列合并javascript方法

先贴出来javascript代码  setInterval(function AutoMerge() { if ($('.table tbody tr').eq(0).data('merge...
  • kdf123
  • kdf123
  • 2015年11月12日 09:33
  • 1087

table表格合并第一列中相同的内容!

如图:thinkphp 从控制器中给的二维数组,没有经过排序打印到页面 第一步:结果给过来的数组进行数组排序,按照CategoryType排序  usort函数 $re...
  • chaoluo001
  • chaoluo001
  • 2016年09月29日 16:58
  • 1931

EXCEL中合并同列中连续相同内容的单元格

在用EXCEL进行数据处理时,经常遇到需要合并某一列中连续出现的包含相同值得单元格的情况,以下图为例: A列中是一些保护区的名称,B列种是这些保护区的级别,发现B列只有国家级、省级、县级和拟建四个...
  • SuperGiser_Lee
  • SuperGiser_Lee
  • 2017年04月12日 18:55
  • 1530

导出的excel同一列相同内容的合并

String lingyu = sheet.getRow(2).getCell(0).getStringCellValue();         short j = 1;         shor...
  • an341221
  • an341221
  • 2016年07月04日 09:28
  • 1043

asp.net 中的gridview 之合并GridView中某列相同信息的行(单元格)

今天经客户需求需要统计汇总展示数据,使用的控件是asp.net 自带的gridview ,这次需要合并GridView中某列相同信息的行(单元格);经浏览了很多帖子和测试i之后发现底下这种写法及可以很...
  • wangshuai6707
  • wangshuai6707
  • 2015年06月30日 11:27
  • 787

[JS&Jquery]实现页面表格中相同内容的行或列合并

//基于js写法 function hb() { var tab = document.getElementById("subtable"); var maxC...
  • u012949335
  • u012949335
  • 2016年11月08日 17:26
  • 2937
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:一个JAVASCRIPT实用函数,完成合并表格中列中具有相同内容的列单元格的功能
举报原因:
原因补充:

(最多只允许输入30个字)