javascript合并表格单元格实例代码


Posted in Javascript onJanuary 03, 2016

本文为大家介绍了一段来源于网络上的代码实例,能够合并单元格,下面和大家分享一下,希望能够给需要的朋友或多或少带来一定的帮助。
代码实例如下:

<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8"/>
<title>表格单元格合并代码</title>
<script type="text/javascript"> 
function autoRowSpan(tb,row,col){ 
 var lastValue=""; 
 var value=""; 
 var pos=1; 
 for(var i=row;i<tb.rows.length;i++){ 
 value=tb.rows[i].cells[col].innerText; 
 if(lastValue==value){ 
  tb.rows[i].deleteCell(col); 
  tb.rows[i-pos].cells[col].rowSpan=tb.rows[i-pos].cells[col].rowSpan+1; 
  pos++; 
 }
 else{ 
  lastValue=value; 
  pos=1; 
 } 
 } 
} 
window.onload=function(){
 var tb=document.getElementById("tb");
 autoRowSpan(tb,0,0)
}
</script>
</head>
<body>
<table id="tb" border="1">
 <thead>
 <tr >
  <td>国家</td>
  <td>地区</td>
 </tr>
 </thead>
 <tr>
 <td>中国</td>
 <td>河南</td>
 </tr>
 <tr>
 <td>中国</td>
 <td>四川</td>
 </tr>
 <tr>
 <td>中国</td>
 <td>北京</td>
 </tr>
 <tr>
 <td>美国</td>
 <td>纽约</td>
 </tr>
 <tr>
 <td>美国</td>
 <td>洛杉矶</td>
 </tr>
 <tr>
 <td>英国</td>
 <td>伦敦</td>
 </tr>
</table>
</body>
</html>

在为大家分享一段:

<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
<title>合并表格</title> 
<script> 
/////////////////////////////////////////////// 
//功能:合并表格 
//参数:tb-需要合并的表格ID 
//参数:colLength--需要对前几列进行合并,比如, 
//想合并前两列,后面的数据列忽略合并,colLength应为2 
//缺省表示对全部列合并 
//data:2011.11.06 
/////////////////////////////////////////////// 
function uniteTable(tb,colLength){ 
//检查表格是否规整 
if(!checkTable(tb)) return; 
var i=0; 
var j=0; 
var rowCount=tb.rows.length; //行数 
var colCount=tb.rows[0].cells.length; //列数 
var obj1=null; 
var obj2=null; 
//为每个单元格命名 
for(i=0;i<rowCount;i++){ 
for(j=0;j<colCount;j++){ 
tb.rows[i].cells[j].id="tb__" + i.toString() + "_" + j.toString(); 
} 
} 
//逐列检查合并 
for(i=0;i<colCount;i++){ 
if(i==colLength) return; 
obj1=document.getElementById("tb__0_"+i.toString()) 
for(j=1;j<rowCount;j++){ 
obj2=document.getElementById("tb__"+j.toString()+"_"+i.toString()); 
if(obj1.innerText==obj2.innerText){ 
obj1.rowSpan++; 
obj2.parentNode.removeChild(obj2); 
}else{ 
obj1=document.getElementById("tb__"+j.toString()+"_"+i.toString()); 
} 
} 
} 
} 

///////////////////////////////////////// 
//功能:检查表格是否规整 
//参数:tb--需要检查的表格ID 
//data: 2011.11.06
///////////////////////////////////////// 
function checkTable(tb){ 
if(tb.rows.length==0) return false; 
if(tb.rows[0].cells.length==0) return false; 
for(var i=0;i<tb.rows.length;i++){ 
if(tb.rows[0].cells.length!=tb.rows[i].cells.length) return false; 
} 
return true; 
} 
</script> 
</head> 
<body> 
<table width="400" border="1" id="table1"> 
<tr> 
<td>a</td> 
<td>for</td> 
<td>100</td> 
<td>200</td>
<td>1</td> 
</tr> 
<tr> 
<td>a</td> 
<td>for</td> 
<td>100</td> 
<td>300</td> 
<td>2</td> 
</tr> 
<tr> 
<td>a</td> 
<td>if</td> 
<td>100</td> 
<td>200</td> 
<td>3</td> 
</tr> 
<tr> 
<td>a</td> 
<td>if</td> 
<td>300</td> 
<td>230</td> 
<td>4</td> 
</tr> 
<tr> 
<td>a</td> 
<td>if</td> 
<td>320</td> 
<td>230</td> 
<td>5</td> 
</tr> 
</table> 
<br><input type="button" value="合并表格" onClick="uniteTable(table1,4)"> 
</body> 
</html>

希望本文所述对大家学习javascript程序设计有所帮助。

Javascript 相关文章推荐
jQuery div层的放大与缩小简单实现代码
Mar 28 Javascript
javascript数组快速打乱重排的方法
Jan 02 Javascript
Javascript 数组排序详解
Oct 22 Javascript
js中unicode转码方法详解
Oct 09 Javascript
全面解析Bootstrap表单使用方法(表单按钮)
Nov 24 Javascript
jQuery的Ajax用户认证和注册技术实例教程(附demo源码)
Dec 08 Javascript
快速学习AngularJs HTTP响应拦截器
Dec 31 Javascript
在AngularJS框架中处理数据建模的方式解析
Mar 05 Javascript
Bootstrap 3.x打印预览背景色与文字显示异常的解决
Nov 06 Javascript
BootStrap3中模态对话框的使用
Jan 06 Javascript
浅析vue中常见循环遍历指令的使用 v-for
Apr 18 Javascript
关于JavaScript中异步/等待的用法与理解
Nov 18 Javascript
JS Array.slice 截取数组的实现方法
Jan 02 #Javascript
jquery实现简单的全选和反选功能
Jan 02 #Javascript
基于Javascript实现弹出页面效果
Jan 01 #Javascript
基于jQuery实现点击弹出层实例代码
Jan 01 #Javascript
基于jQuery实现返回顶部实例代码
Jan 01 #Javascript
详解JavaScript 中的 replace 方法
Jan 01 #Javascript
基于JavaScript实现定时跳转到指定页面
Jan 01 #Javascript
You might like
一个目录遍历函数
2006/10/09 PHP
PHP防止刷新重复提交页面的示例代码
2015/11/11 PHP
PHP7.1新功能之Nullable Type用法分析
2016/09/26 PHP
PHP中PCRE正则解析代码详解
2019/04/26 PHP
PHP中__set()实例用法和基础讲解
2019/07/23 PHP
关于IFRAME 自适应高度的研究
2006/07/20 Javascript
JavaScript中创建对象和继承示例解读
2014/02/12 Javascript
jquery自动填充勾选框即把勾选框打上true
2014/03/24 Javascript
原生js实现淘宝首页点击按钮缓慢回到顶部效果
2014/04/06 Javascript
详解AngularJS中的作用域
2015/06/17 Javascript
jQuery+CSS3文字跑马灯特效的简单实现
2016/06/25 Javascript
js实现点击图片自动提交action的简单方法
2016/10/16 Javascript
微信小程序 购物车简单实例
2016/10/24 Javascript
jQuery简单获取DIV和A标签元素位置的方法
2017/02/07 Javascript
值得分享和收藏的xmlplus组件学习教程
2017/05/05 Javascript
Vue 过滤器filters及基本用法
2017/12/26 Javascript
微信小程序MUI导航栏透明渐变功能示例(通过改变rgba的a值实现)
2019/01/24 Javascript
详解用async/await来处理异步
2019/08/28 Javascript
微信小程序 点击切换样式scroll-view实现代码实例
2019/10/11 Javascript
Js实现复选框的全选、全不选反选功能代码实例
2020/02/28 Javascript
axios解决高并发的方法:axios.all()与axios.spread()的操作
2020/11/09 Javascript
vue-router路由懒加载及实现的3种方式
2021/02/28 Vue.js
[05:09]第二届DOTA2亚洲邀请赛决赛日比赛集锦:iG 3:0 OG夺冠
2017/04/05 DOTA
基于Django contrib Comments 评论模块(详解)
2017/12/08 Python
详解Python进阶之切片的误区与高级用法
2018/12/24 Python
Django框架model模型对象验证实现方法分析
2019/10/02 Python
Python函数参数定义及传递方式解析
2020/06/10 Python
python dir函数快速掌握用法技巧
2020/12/09 Python
详解快速开发基于 HTML5 网络拓扑图应用
2018/01/08 HTML / CSS
英国家电直销:Appliances Direct
2016/09/22 全球购物
瑞士隐形眼镜和护理产品网上商店:Linsenklick
2019/10/21 全球购物
儿媳婚宴答谢词
2014/01/14 职场文书
难忘的一天教学反思
2014/04/30 职场文书
学生吸烟检讨书
2014/09/14 职场文书
2015应届毕业生自荐信范文
2015/03/05 职场文书
python manim实现排序算法动画示例
2022/08/14 Python