DOM动态添加与删除元素

动态增加元素的DOM操作
服务器君一共花费了226.381 ms进行了5次数据库查询,努力地为您提供了这个页面。
试试阅读模式?希望听取您的建议

动态的增加和删除元素在很多地方都需要用到,比如有时候需要大量数据收集的时候,我们就需要动态增加form表单等。下面是一个例子:

效果演示

动态添加用户
添加新的用户名  
用户信息

JavaScript代码

<html>  
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 
<head>  
<title>DOM-动态添加和删除元素</title>  
<style type="text/css">  
body,td,caption,input{ font-size:12px; }
.test { border-collapse:collapse; }
.test td { border:1px solid #ccc; line-height:150%;  }  
</style>  
<script language="javascript">  
var count = 0;  
//添加新用户的操作  
function addNewUser()
{  
	//得到文本框对象  
	var objName = document.getElementById('name');  
	if(objName.value=="")
	{  
		alert("用户名不能为空!");  
		objName.focus();  
		return;  
	}
	else
	{  
  		count++;  
		//先创建行tr  
   		var row = document.createElement("tr");  
     	//设置行对象的ID属性为用户输入的用户名称  
		row.setAttribute("id",objName.value+count);  
    	//创建td对象  
    	 var column = document.createElement("td");  
     	//td对象下添加子节点 - 内容 TextNode 对象  
     	column.appendChild(document.createTextNode(objName.value));  
     	//row对象将td对象添加为子节点对象  
  		row.appendChild(column);  
  
    	//再创建删除按钮  
		var delBtn = document.createElement("input");  
 		//类型  
    	delBtn.setAttribute("type","button");  
		//文本  
		delBtn.setAttribute("value","Delete");  
  
		//设置对象的事件处理 - 所调用的函数  
   		var name = objName.value+count;  
		delBtn.onclick= function(){delUser(name);};  
  
		column = document.createElement("td");  
   		column.appendChild(delBtn);  
                      
		//行对象添加  
 		row.appendChild(column);  
  		//添加这一行到tbody中  
 		document.getElementById('userList').appendChild(row);  
		objName.value="";  
	}  
}  
//删除元素  
function delUser(name)
{  
	if(name!=null)
	{  
 		var objRow = document.getElementById(name);  
   		var objTBODY = document.getElementById("userList");  
     	//删除  
    	objTBODY.removeChild(objRow);  
  	}  
}  
</script>  
</head>  
<body>  
<table align="center" width="40%" cellspacing="0" class="test">  
	<caption align="center">动态添加用户</caption>  
	<tr>  
		<td>添加新的用户名</td>  
		<td><input type="text" id="name">  <input type="button" value="添 加" onClick="addNewUser()"></td>   
	</tr>  
	<tr>  
		<td colspan="2">用户信息</td>  
	</tr>   
	<!--表格主体-->  
	<tbody id="userList"></tbody>  
</table>  
</body>  
</html>

本文地址:http://www.nowamagic.net/librarys/veda/detail/447,欢迎访问原出处。

不打个分吗?

转载随意,但请带上本文地址:

http://www.nowamagic.net/librarys/veda/detail/447

如果你认为这篇文章值得更多人阅读,欢迎使用下面的分享功能。
小提示:您可以按快捷键 Ctrl + D,或点此 加入收藏

阅读一百本计算机著作吧,少年

很多人觉得自己技术进步很慢,学习效率低,我觉得一个重要原因是看的书少了。多少是多呢?起码得看3、4、5、6米吧。给个具体的数量,那就100本书吧。很多人知识结构不好而且不系统,因为在特定领域有一个足够量的知识量+足够良好的知识结构,系统化以后就足以应对大量未曾遇到过的问题。

奉劝自学者:构建特定领域的知识结构体系的路径中再也没有比学习该专业的专业课程更好的了。如果我的知识结构体系足以囊括面试官的大部分甚至吞并他的知识结构体系的话,读到他言语中的一个词我们就已经知道他要表达什么,我们可以让他坐“上位”毕竟他是面试官,但是在知识结构体系以及心理上我们就居高临下。

所以,阅读一百本计算机著作吧,少年!

《程序员修炼之道:从小工到专家》 亨特(Andrew Hunt) (作者), 托马斯(David Thomas) (作者), 马维达 (译者)

《程序员修炼之道:从小工到专家》内容简介:《程序员修炼之道》由一系列独立的部分组成,涵盖的主题从个人责任、职业发展,知道用于使代码保持灵活、并且易于改编和复用的各种架构技术,利用许多富有娱乐性的奇闻轶事、有思想性的例子及有趣的类比,全面阐释了软件开发的许多不同方面的最佳实践和重大陷阱。无论你是初学者,是有经验的程序员,还是软件项目经理,《程序员修炼之道:从小工到专家》都适合你阅读。

更多计算机宝库...