`
sngg_yang
  • 浏览: 31213 次
  • 来自: ...
文章分类
社区版块
存档分类
最新评论

一个合并重复行的js dom 操作函数

IE 
阅读更多


/*
* 合并重复内容的单元格
* @param tableId 操作table的ID
* @param tbodyId table的tbody ID
*/

function changeRowspan(tbodyId){
var tbObj = document.getElementById(tbodyId); //取得tbody对象
if(tbObj != null) {
var rowsObj = tbObj.rows; //tbody 的所用行的对象集合
for(var i = 0; i < rowsObj.length;){
var trObj = rowsObj[i]; // 取得行对象
var tdsObj = trObj.cells; //取得一行中所有td的对象集合
var curTdObj = tdsObj[0]; // 取得一行中第一个 td对象

if((curTdObj.rowSpan < 2) && (tdsObj.length < 4)){
i++;
continue;
}

/*
*如果前一行第一个td 的内容与当前行第一个td的内容相同
*将前一行第一个td 的 “合并行值”与当前行第一个td的值累加,
*并将当前行第一个td删除。 行数i 加上当前行第一个td的“合并行值”。
*跳过之后从头执行
*/
if((i > 0) && (curTdObj.innerHTML == preTdObj.innerHTML)) {
preTdObj.rowSpan = preTdObj.rowSpan + curTdObj.rowSpan;
trObj.removeChild(curTdObj);
i += curTdObj.rowSpan;
continue;
}

i++;
var preTdObj = tdsObj[0];
}
}
}

注:ie 不知道 textContent 属性
分享到:
评论
1 楼 shengfuqiang 2010-10-28  
正要用到,但是运行好像不行额

相关推荐

    python入门到高级全栈工程师培训 第3期 附课件代码

    06 django的一个简单应用 07 django静态文件之static 08 django的url控制系统 09 django的urlConf补充 第50章 01 django之视图函数的介绍 02 django视图之redirec 03 django模板之变量 04 django模板之过滤器 05 ...

    jquery插件使用方法大全

    并且可以在不同的js文件中做相同的操作,即$(document).ready (fn)可以在一个页面中重复出现,而不会冲突。基本上Jquery的很多plugin都是利用这个特性,正因为这个特性,多个plugin共同使用起来,在初始化时不会发生...

    程序天下:JavaScript实例自学手册

    6.5 从一个下拉列表往另一个下拉列表添加内容 6.6 改变列表项的上下顺序 6.7 给下拉框数据分组 6.8 获取列表框的选择 6.9 类IE下拉框 6.10 下拉框式邮件发送 6.11 获取多选框的选择项 6.12 手动调整的列表框 6.13 ...

    《程序天下:JavaScript实例自学手册》光盘源码

    6.5 从一个下拉列表往另一个下拉列表添加内容 6.6 改变列表项的上下顺序 6.7 给下拉框数据分组 6.8 获取列表框的选择 6.9 类IE下拉框 6.10 下拉框式邮件发送 6.11 获取多选框的选择项 6.12 手动调整的列表框 6.13 ...

    ECMAScript 2018快速入门 高清完整PDF

    内容包括变量与常量、表达式和运算符、字符串、数字和符号、数组和类型化数组、对象、函数、集合和映射、迭代器和生成器、Promise对象与异步函数、代理、类和模块,最后引导读者自己动手写一个JS框架。 [1] 目录 第...

    【卷一/共两卷】AJAX实战pdf高清版90M

    2.4.1 使用JavaScript操作DOM 2.4.2 寻找DOM节点 2.4.3 创建DOM节点 2.4.4 为文档增加样式 2.4.5 捷径:使用innerHTML属性 2.5 使用XML技术异步加载数据 2.5.1 IFrame 2.5.2 XMLDocument和XMLHttpRequest对象 2 5.3 ...

    JavaScript网页特效范例宝典源码

    实例075 只有一个复选框时控制复选框的全选或反选 119 2.5 密码域 120 实例076 让您的密码域更安全 120 实例077 不提交表单自动检测密码域是否相同 121 2.6 表单应用 122 实例078 通过JavaScript控制表单的提交与...

    vc++ 应用源码包_1

    操作大文件,自定义了一个操作大文件的类,并进行了测试。 chapter7 实现了声音录制等功能。 CHtmlViewProjV2 详细演示了HtmlView的使用与HtmlView事件站点拦截的实现、js调用。 CIVStringSet_Demo 自定义了一个...

    vc++ 应用源码包_2

    操作大文件,自定义了一个操作大文件的类,并进行了测试。 chapter7 实现了声音录制等功能。 CHtmlViewProjV2 详细演示了HtmlView的使用与HtmlView事件站点拦截的实现、js调用。 CIVStringSet_Demo 自定义了一个...

    vc++ 应用源码包_6

    操作大文件,自定义了一个操作大文件的类,并进行了测试。 chapter7 实现了声音录制等功能。 CHtmlViewProjV2 详细演示了HtmlView的使用与HtmlView事件站点拦截的实现、js调用。 CIVStringSet_Demo 自定义了一个...

    vc++ 应用源码包_3

    操作大文件,自定义了一个操作大文件的类,并进行了测试。 chapter7 实现了声音录制等功能。 CHtmlViewProjV2 详细演示了HtmlView的使用与HtmlView事件站点拦截的实现、js调用。 CIVStringSet_Demo 自定义了一个...

    vc++ 应用源码包_5

    操作大文件,自定义了一个操作大文件的类,并进行了测试。 chapter7 实现了声音录制等功能。 CHtmlViewProjV2 详细演示了HtmlView的使用与HtmlView事件站点拦截的实现、js调用。 CIVStringSet_Demo 自定义了一个...

    vc++ 开发实例源码包

    操作大文件,自定义了一个操作大文件的类,并进行了测试。 chapter7 实现了声音录制等功能。 CHtmlViewProjV2 详细演示了HtmlView的使用与HtmlView事件站点拦截的实现、js调用。 CIVStringSet_Demo 自定义了一个...

    精易官方免费模块v3.60版

    2.删除“程序_禁止重复运行_浏览器”,一个不知道何时添加的未公开子程序(可能代码也有问题) 1.完善“程序_加入右键菜单”,增加可空参数 &lt;显示名称&gt;感谢 阿蒙 的提醒 2.完善“线程_取自线程句柄”,采用百度百科的...

    精易模块[源码] V5.15

    4、新增“窗口_是否被遮挡”,判断一个窗口是否被置顶窗口遮挡,代码由易友【@shituo】提供。 5、改善“汇编类-&gt;置入汇编代码”增添一个参数是否保留以前代码。感谢易友【@无名侠】反馈。 6、修正“文本_加密”返回...

Global site tag (gtag.js) - Google Analytics