JavaScript动态操作表格实例(添加,删除行,列及单元格)


Posted in Javascript onNovember 25, 2013
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>js动态操作表格</title>
<script language="javascript">
function init(){
_table=document.getElementById("table");
_table.border="1px";
_table.width="800px";
for(var i=1;i<6;i++){
var row=document.createElement("tr");
row.id=i;
for(var j=1;j<6;j++){
var cell=document.createElement("td");
cell.id=i+"/"+j;
cell.appendChild(document.createTextNode("第"+cell.id+"列"));
row.appendChild(cell);
}
document.getElementById("newbody").appendChild(row);
}
}
function rebulid(){
var beginRow=document.getElementById("beginRow").value;/*开始行*/
var endRow=document.getElementById("endRow").value;/*结束行*/
var beginCol=document.getElementById("beginCol").value;/*开始列*/
var endCol=document.getElementById("endCol").value;/*结束列*/
var tempCol=beginRow+"/"+beginCol;/*定位要改变属性的列*/
alert(tempCol);
var td=document.getElementById(tempCol);
for(var x=beginRow;x<=endRow;x++){
for(var i=beginCol;i<=endCol;i++){
if(x==beginRow){
document.getElementById("table").rows[x].deleteCell(i+1);
}
else{
document.getElementById("table").rows[x].deleteCell(i);
}
}
}
td.rowSpan=(endRow-beginRow)+1;
}
/*添加行,使用appendChild方法*/
function addRow(){
var length=document.getElementById("table").rows.length;
/*document.getElementById("newbody").insertRow(length);
document.getElementById(length+1).setAttribute("id",length+2);*/
var tr=document.createElement("tr");
tr.id=length+1;
var td=document.createElement("td");
for(i=1;i<4;i++){
td.id=tr.id+"/"+i;
td.appendChild(document.createTextNode("第"+td.id+"列"));
tr.appendChild(td);
}
document.getElementById("newbody").appendChild(tr);
}
function addRow_withInsert(){
var row=document.getElementById("table").insertRow(document.getElementById("table").rows.length);
var rowCount=document.getElementById("table").rows.length;
var countCell=document.getElementById("table").rows.item(0).cells.length;
for(var i=0;i<countCell;i++){
var cell=row.insertCell(i);
cell.innerHTML="新"+(rowCount)+"/"+(i+1)+"列";
cell.id=(rowCount)+"/"+(i+1);
}
}
/*删除行,采用deleteRow(row Index)*/
function removeRow(){
document.getElementById("newbody").deleteRow(document.getElementById(document.getElementById("table").rows.length).rowIndex);
}
/*添加列,采用insertCell(列位置)方法*/
function addCell(){
/*document.getElementById("table").rows.item(0).cells.length
用来获得表格的列数
*/
for(var i=0;i<document.getElementById("table").rows.length;i++){
var cell=document.getElementById("table").rows[i].insertCell(2);
cell.innerHTML="第"+(i+1)+"/"+3+"列";
}
}
/*删除列,采用deleteCell(列位置)的方法*/
function removeCell(){
for(var i=0;i<document.getElementById("table").rows.length;i++){
document.getElementById("table").rows[i].deleteCell(0);
}
}
</script>
</head>
<body onLoad="init();">
<table  id="table" align="center">
<tbody id="newbody"></tbody>
</table>
<div>
<table width="800px" border="1px" align="center">
<tr><td align="center"><input type="button" id="addRow" name="addRow" onClick="addRow();" value="添加行"/></td><td align="center"><input type="button" id="delRow" name="delRow" onClick="removeRow();" value="删除行"/></td></tr>
<tr><td align="center"><input type="button" id="delCell" name="delCell"  onClick="removeCell();" value="删除列"/></td><td align="center"><input type="button" id="addCell" name="addCell" onClick=" addCell();" value="添加列"/></td></tr>
 <tr><td align="center" colspan="2"><input type="button" id="addRows" name="addRows"  onClick="addRow_withInsert();" value="添加行"/></td></tr>
</table>
</div>
<div>
<table width="800px" border="1px" align="center">
<tr><td>从第<input type="text" id="beginRow" name="beginRow"  value=""/>行到<input type="text"  name="endRow"  id="endRow" value=""/>行</td><td rowspan="2"  id="test"><input type="button" name="hebing" id="hebing" value="合并" onClick="rebulid();"/></td></tr>

<tr><td>从第<input type="text" name="beginCol" id="beginCol" value=""/>列到<input type="text" name="endCol" id="endCol" value=""/>列</td></tr>
</table>
</div>
</body>
</html>
Javascript 相关文章推荐
Hutia 的 JS 代码集
Oct 24 Javascript
Tips 带三角可关闭的文字提示
Oct 06 Javascript
一个可拖拽列宽表格实例演示
Nov 26 Javascript
javascript读取Xml文件做一个二级联动菜单示例
Mar 17 Javascript
jQuery检测滚动条是否到达底部
Dec 15 Javascript
Bootstrap组件(一)之菜单
May 11 Javascript
bootstrap 下拉多选框进行多选传值问题代码分析
Feb 14 Javascript
bootstrap弹出层的多种触发方式
May 10 Javascript
webstorm添加vue.js支持的方法教程
Jul 05 Javascript
微信小程序显示下拉列表功能【附源码下载】
Dec 12 Javascript
js闭包学习心得总结
Apr 17 Javascript
vue项目创建并引入饿了么elementUI组件的步骤
Apr 11 Javascript
用javascript删除当前行,添加行(示例代码)
Nov 25 #Javascript
如何通过javascript操作web控件的自定义属性
Nov 25 #Javascript
利用js实现前台动态添加文本框,后台获取文本框内容(示例代码)
Nov 25 #Javascript
js导入导出excel(实例代码)
Nov 25 #Javascript
用javascript添加控件自定义属性解析
Nov 25 #Javascript
JavaScript/Js脚本处理html元素的自定义属性解析(亲测兼容Firefox与IE)
Nov 25 #Javascript
几种设置表单元素中文本输入框不可编辑的方法总结
Nov 25 #Javascript
You might like
10个实用的PHP代码片段
2011/09/02 PHP
PHP new static 和 new self详解
2017/02/19 PHP
xml分页+ajax请求数据源+dom取结果实例代码
2008/10/31 Javascript
自己整理的一个javascript日期处理函数
2010/10/16 Javascript
IE6/7/8/9不支持exec的简写方式
2011/05/25 Javascript
js设置cookie过期当前时间减去一秒相当于立即过期
2014/09/04 Javascript
Nodejs学习笔记之测试驱动
2015/04/16 NodeJs
js判断子窗体是否关闭的方法
2015/08/11 Javascript
jQuery实现悬浮在右上角的网页客服效果代码
2015/10/24 Javascript
JavaScript必知必会(二) null 和undefined
2016/06/08 Javascript
jQuery获取Table某列的值(推荐)
2017/03/03 Javascript
微信小程序 登录的简单实现
2017/04/19 Javascript
jQuery validata插件实现方法
2017/06/25 jQuery
浅析JS抽象工厂模式
2017/12/14 Javascript
原生js+cookie实现购物车功能的方法分析
2017/12/21 Javascript
彻底弄懂 JavaScript 执行机制
2018/10/23 Javascript
在Create React App中使用CSS Modules的方法示例
2019/01/15 Javascript
简单两步使用node发送qq邮件的方法
2019/03/01 Javascript
layui form表单提交之后重新加载数据表格的方法
2019/09/11 Javascript
layer弹出层自适应高度,垂直水平居中的实现
2019/09/16 Javascript
详谈Python基础之内置函数和递归
2017/06/21 Python
Python模拟三级菜单效果
2017/09/11 Python
Python3使用正则表达式爬取内涵段子示例
2018/04/22 Python
Python设置matplotlib.plot的坐标轴刻度间隔以及刻度范围
2019/06/25 Python
Python paramiko模块使用解析(实现ssh)
2019/08/30 Python
Python多线程threading join和守护线程setDeamon原理详解
2020/03/18 Python
英国街头品牌:Bee Inspired Clothing
2018/02/12 全球购物
三星英国官网:Samsung英国
2018/09/25 全球购物
opencv实现图像平移效果
2021/03/24 Python
内蒙古鄂尔多斯市市长寄语
2014/04/10 职场文书
英语教师求职信
2014/06/16 职场文书
领导班子整改方案
2014/10/25 职场文书
党员作风建设整改方案
2014/10/27 职场文书
大学生见习总结报告
2015/06/24 职场文书
MySQL为id选择合适的数据类型
2021/06/07 MySQL
Spring Cloud OpenFeign模版化客户端
2022/06/25 Java/Android