js动态给table添加/删除tr的方法


Posted in Javascript onAugust 02, 2013
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<script language="javascript">// Example: obj = findObj("image1");
function findObj(theObj, theDoc)
{ 
var p, i, foundObj; 
if(!theDoc) theDoc = document; 
if( (p = theObj.indexOf("?")) > 0 && parent.frames.length) 
{ theDoc = parent.frames[theObj.substring(p+1)].document; theObj = theObj.substring(0,p); } if(!(foundObj = theDoc[theObj]) && theDoc.all) foundObj = theDoc.all[theObj]; for (i=0; !foundObj && i < theDoc.forms.length; i++) foundObj = theDoc.forms[i][theObj]; for(i=0; !foundObj && theDoc.layers && i < theDoc.layers.length; i++) foundObj = findObj(theObj,theDoc.layers[i].document); if(!foundObj && document.getElementById) foundObj = document.getElementById(theObj); return foundObj;
}
//添加一个参与人填写行
function AddSignRow(){ //读取最后一行的行号,存放在txtTRLastIndex文本框中 
var txtTRLastIndex = findObj("txtTRLastIndex",document);
var rowID = parseInt(txtTRLastIndex.value);
var signFrame = findObj("SignFrame",document);
//添加行
var newTR = signFrame.insertRow(signFrame.rows.length);
newTR.id = "SignItem" + rowID;
//添加列:序号
var newNameTD=newTR.insertCell(0);
//添加列内容
newNameTD.innerHTML = newTR.rowIndex.toString();
//添加列:姓名
var newNameTD=newTR.insertCell(1);
//添加列内容
newNameTD.innerHTML = "<input name='txtName" + rowID + "' id='txtName" + rowID + "' type='text' size='12' />";
//添加列:电子邮箱
var newEmailTD=newTR.insertCell(2);
//添加列内容
newEmailTD.innerHTML = "<input name='txtEMail" + rowID + "' id='txtEmail" + rowID + "' type='text' size='20' />";
//添加列:电话
var newTelTD=newTR.insertCell(3);
//添加列内容
newTelTD.innerHTML = "<input name='txtTel" + rowID + "' id='txtTel" + rowID + "' type='text' size='10' />";
//添加列:手机
var newMobileTD=newTR.insertCell(4);
//添加列内容
newMobileTD.innerHTML = "<input name='txtMobile" + rowID + "' id='txtMobile" + rowID + "' type='text' size='12' />";//添加列:公司名
var newCompanyTD=newTR.insertCell(5);
//添加列内容
newCompanyTD.innerHTML = "<input name='txtCompany" + rowID + "' id='txtCompany" + rowID + "' type='text' size='20' />";

//添加列:删除按钮
var newDeleteTD=newTR.insertCell(6);
//添加列内容
newDeleteTD.innerHTML = "<div align='center' style='width:40px'><a href='#'" + rowID + "')">删除</a></div>";
//将行号推进下一行
txtTRLastIndex.value = (rowID + 1).toString() ;
}
//删除指定行
function DeleteSignRow(rowid){
var signFrame = findObj("SignFrame",document);
var signItem = findObj(rowid,document);
//获取将要删除的行的Index
var rowIndex = signItem.rowIndex;
//删除指定Index的行
signFrame.deleteRow(rowIndex);
//重新排列序号,如果没有序号,这一步省略
for(i=rowIndex;i<signFrame.rows.length;i++){
signFrame.rows[i].cells[0].innerHTML = i.toString();
}
}//清空列表
function ClearAllSign(){
if(confirm('确定要清空所有参与人吗?')){
var signFrame = findObj("SignFrame",document);
var rowscount = signFrame.rows.length;
//循环删除行,从最后一行往前删除
for(i=rowscount - 1;i > 0; i--){
signFrame.deleteRow(i);
}
//重置最后行号为1
var txtTRLastIndex = findObj("txtTRLastIndex",document);
txtTRLastIndex.value = "1";
//预添加一行
AddSignRow();
}
}
</script>
</HEAD>
<BODY>
<div>
<table width="613" border="0" cellpadding="2" cellspacing="1" id="SignFrame">
<tr id="trHeader">
<td width="27" bgcolor="#96E0E2">序号</td>
<td width="64" bgcolor="#96E0E2">用户姓名</td>
<td width="98" bgcolor="#96E0E2">电子邮箱</td>
<td width="92" bgcolor="#96E0E2">固定电话</td>
<td width="86" bgcolor="#96E0E2">移动手机</td>
<td width="153" bgcolor="#96E0E2">公司名称</td>
<td width="57" align="center" bgcolor="#96E0E2"> </td>
</tr>
</table>
</div>
<div>
<input type="button" name="Submit" value="添加参与人" /> 
<input type="button" name="Submit2" value="清空" />
<input name='txtTRLastIndex' type='hidden' id='txtTRLastIndex' value="1" />
</div>
</BODY>
</HTML>
Javascript 相关文章推荐
什么是JavaScript
Aug 13 Javascript
javascript预加载图片、css、js的方法示例介绍
Oct 14 Javascript
jquery.validate的使用说明介绍
Nov 12 Javascript
jquery实现超简洁的TAB选项卡效果代码
Aug 28 Javascript
angular.bind使用心得
Oct 26 Javascript
JS实现按比例缩放图片的方法(附C#版代码)
Dec 08 Javascript
JavaScript数组操作函数汇总
Aug 05 Javascript
jQuery实现发送验证码并60秒倒计时功能
Nov 25 Javascript
微信小程序网络请求wx.request详解及实例
May 18 Javascript
jQuery中 DOM节点操作方法大全
Oct 12 jQuery
AngularJS模态框模板ngDialog的使用详解
May 11 Javascript
详解小程序循环require之坑
Mar 08 Javascript
JS和jquery获取各种屏幕的宽度和高度的代码
Aug 02 #Javascript
JavaScript获取/更改文本框的值的实例代码
Aug 02 #Javascript
JS限制Textarea文本域字符个数的具体实现
Aug 02 #Javascript
javascript自动改变文字大小和颜色的效果的小例子
Aug 02 #Javascript
JS解决ie6下png透明的方法实例
Aug 02 #Javascript
用innerhtml提高页面打开速度的方法
Aug 02 #Javascript
JQuery 获取json数据$.getJSON方法的实例代码
Aug 02 #Javascript
You might like
功能齐全的PHP发送邮件类代码附详细说明
2008/07/10 PHP
PHP从二维数组得到N层分类树的实现代码
2016/10/11 PHP
php获取当前月与上个月月初及月末时间戳的方法
2016/12/05 PHP
laravel实现上传图片,并且制作缩略图,按照日期存放的代码
2019/10/16 PHP
Yii框架where查询用法实例分析
2019/10/22 PHP
Laravel jwt 多表(多用户端)验证隔离的实现
2019/12/18 PHP
js模拟弹出效果代码修正版
2008/08/07 Javascript
jQuery手机拨号界面特效代码分享
2015/08/27 Javascript
JS实现仿FLASH效果的竖排导航代码
2015/09/15 Javascript
基于jQuery实现歌词滚动版音乐播放器的代码
2016/09/17 Javascript
AngularJS实现自定义指令与控制器数据交互的方法示例
2017/06/19 Javascript
ES7中利用Await减少回调嵌套的方法详解
2017/11/01 Javascript
浅谈Koa2框架利用CORS完成跨域ajax请求
2018/03/06 Javascript
vue实现购物车小案例
2019/09/27 Javascript
解决ele ui 表格表头太长问题的实现
2019/11/13 Javascript
微信小程序scroll-view实现滚动到锚点左侧导航栏点餐功能(点击种类,滚动到锚点)
2020/06/11 Javascript
JavaScript实现串行请求的示例代码
2020/09/14 Javascript
vue 在服务器端直接修改请求的接口地址
2020/12/19 Vue.js
[05:42]DOTA2英雄梦之声_第10期_蝙蝠骑士
2014/06/21 DOTA
Python中使用插入排序算法的简单分析与代码示例
2016/05/04 Python
python实现图片中文字分割效果
2019/07/22 Python
python 并发编程 阻塞IO模型原理解析
2019/08/20 Python
python验证码图片处理(二值化)
2019/11/01 Python
python实现简单飞行棋
2020/02/06 Python
Python eval函数介绍及用法
2020/11/09 Python
Pandas数据分析的一些常用小技巧
2021/02/07 Python
css3动画过渡实现鼠标跟随导航效果
2018/02/08 HTML / CSS
爱尔兰灯和灯具网上商店:Lights.ie
2018/03/26 全球购物
SQL注入攻击的种类有哪些
2013/12/30 面试题
运动会通讯稿150字
2014/02/15 职场文书
信息技术毕业生自荐信范文
2014/03/13 职场文书
《与朱元思书》的教学反思
2014/04/17 职场文书
校本教研活动总结
2014/07/01 职场文书
《中国梦我的梦》中学生演讲稿
2014/08/20 职场文书
幼儿园国培研修日志
2015/11/13 职场文书
mysql使用instr达到in(字符串)的效果
2022/04/03 MySQL