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实现checkbox全选全不选的简单实例
Dec 31 Javascript
浅谈JavaScript实现面向对象中的类
Dec 09 Javascript
jquery实现多屏多图焦点图切换特效的方法
May 04 Javascript
Bootstrap table分页问题汇总
May 30 Javascript
js字符串引用的两种方式(必看)
Sep 18 Javascript
深入理解React高阶组件
Sep 28 Javascript
浅谈React中组件间抽象
Jan 27 Javascript
Vue实现点击后文字变色切换方法
Feb 11 Javascript
React Form组件的实现封装杂谈
May 07 Javascript
详解Angular5/Angular6项目如何添加热更新(HMR)功能
Oct 10 Javascript
VUE页面中通过双击实现复制表格中内容的示例代码
Jun 11 Javascript
echarts饼图各个板块之间的空隙如何实现
Dec 01 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
精致的人儿就要挑杯子喝咖啡
2021/03/03 冲泡冲煮
PHP分页显示制作详细讲解
2006/10/09 PHP
一个PHP操作Access类(PHP+ODBC+Access)
2007/01/02 PHP
Array of country list in PHP with Zend Framework
2011/10/17 PHP
php无限极分类实现的两种解决方法
2013/04/28 PHP
新浪SAE云平台下使用codeigniter的数据库配置
2014/06/12 PHP
php线性表的入栈与出栈实例分析
2015/06/12 PHP
PHP基于反射机制实现插件的可插拔设计详解
2016/11/10 PHP
thinkPHP统计排行与分页显示功能示例
2016/12/02 PHP
php获取POST数据的三种方法实例详解
2016/12/20 PHP
PHP获取数据库表中的数据插入新的表再原删除数据方法
2018/10/12 PHP
js右键菜单效果代码
2007/07/21 Javascript
Javascript base64编码实现代码
2011/12/02 Javascript
js获取url中的参数且参数为中文时通过js解码
2014/03/19 Javascript
Canvas 绘制粒子动画背景
2017/02/15 Javascript
微信小程序实现根据字母选择城市功能
2017/08/16 Javascript
判断iOS、Android以及PC端的示例代码
2018/11/15 Javascript
vue从一个页面跳转到另一个页面并携带参数的解决方法
2019/08/12 Javascript
JS变量提升原理与用法实例浅析
2020/05/22 Javascript
详解Python网络爬虫功能的基本写法
2016/01/28 Python
python3使用matplotlib绘制散点图
2019/03/19 Python
使用Python计算玩彩票赢钱概率
2019/06/26 Python
django页面跳转问题及注意事项
2019/07/18 Python
python获取Linux发行版名称
2019/08/30 Python
Django用数据库表反向生成models类知识点详解
2020/03/25 Python
python3 kubernetes api的使用示例
2021/01/12 Python
意大利中国电子产品购物网站:Geekmall.com
2019/09/30 全球购物
婚礼证婚人证婚词
2014/01/08 职场文书
青年文明号复核材料
2014/02/11 职场文书
洗发露广告词
2014/03/14 职场文书
学习雷锋活动总结
2014/04/29 职场文书
数学教师求职信范文
2015/03/20 职场文书
2015年医院科室工作总结范文
2015/05/26 职场文书
Pyhton模块和包相关知识总结
2021/05/12 Python
利用正则表达式匹配浮点型数据
2022/05/30 Java/Android
Nginx如何配置多个服务域名解析共用80端口详解
2022/09/23 Servers