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 相关文章推荐
JS中的数组的sort方法使用示例
Jan 22 Javascript
js设置document.domain实现跨域的注意点分析
May 21 Javascript
jQuery实现的网页左侧在线客服效果代码
Oct 23 Javascript
EasyUI在表单提交之前进行验证的实例代码
Jun 24 Javascript
浅析javascript中的Event事件
Dec 09 Javascript
Ajax跨域实现代码(后台jsp)
Jan 21 Javascript
Easyui在treegrid添加控件的实现方法
Jun 23 Javascript
微信小程序Getuserinfo解决方案图解
Aug 24 Javascript
利用node 判断打开的是文件 还是 文件夹的实例
Jun 10 Javascript
如何提升vue.js中大型数据的性能
Jun 21 Javascript
VueCli4项目配置反向代理proxy的方法步骤
May 17 Javascript
uniapp实现横向滚动选择日期
Oct 21 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
在VS2008中编译MYSQL5.1.48的方法
2010/07/03 PHP
ThinkPHP3.0略缩图不能保存到子目录的解决方法
2012/09/30 PHP
基于session_unset与session_destroy的区别详解
2013/06/03 PHP
php Xdebug的安装与使用详解
2013/06/20 PHP
destoon利用Rewrite规则设置网站安全
2014/06/21 PHP
PHP字符串中抽取子串操作实例分析
2019/06/22 PHP
jQuery autocomplete插件修改
2009/04/17 Javascript
jquery遍历input取得input的name
2009/04/27 Javascript
jQuery toggle()设置CSS样式
2009/11/05 Javascript
JavaScript常用对象的方法和属性小结
2012/01/24 Javascript
解析ScrollPic在ie8下只滚动一遍,然后变为空白 ie6,ie7,chrome,firefox正常
2013/06/26 Javascript
window.open()详解及浏览器兼容性问题示例探讨
2014/05/29 Javascript
js实现超酷的照片墙展示效果图附源码下载
2015/10/08 Javascript
javascirpt实现2个iframe之间传值的方法
2016/06/30 Javascript
VS Code转换大小写、修改选中文字或代码颜色的方法
2017/12/15 Javascript
nodejs+express搭建多人聊天室步骤
2018/02/12 NodeJs
vue 子组件向父组件传值方法
2018/02/26 Javascript
JavaScript中使用import 和require打包后实现原理分析
2018/03/07 Javascript
微信小程序实现跑马灯效果完整代码(附效果图)
2018/05/30 Javascript
python3 pandas 读取MySQL数据和插入的实例
2018/04/20 Python
tensorflow实现简单的卷积神经网络
2018/05/24 Python
python实现按长宽比缩放图片
2018/06/07 Python
使用Python横向合并excel文件的实例
2018/12/11 Python
Python叠加两幅栅格图像的实现方法
2019/07/05 Python
基于Python的ModbusTCP客户端实现详解
2019/07/13 Python
python实现引用其他路径包里面的模块
2020/03/09 Python
Python多线程threading join和守护线程setDeamon原理详解
2020/03/18 Python
Holland & Barrett爱尔兰:英国领先的健康零售商
2019/03/31 全球购物
美国运动鞋类和服装零售连锁店:Shoe Palace
2019/08/13 全球购物
linux面试题参考答案(10)
2016/10/26 面试题
竞聘上岗演讲稿范文
2014/01/10 职场文书
安全生产检查通报
2014/01/29 职场文书
教师党员岗位承诺书
2014/05/29 职场文书
个人债务授权委托书范本
2014/10/05 职场文书
python 破解加密zip文件的密码
2021/04/22 Python
golang使用map实现去除重复数组
2022/04/14 Golang