首页 > 其他分享 >JS笔记第六期(DOM练习)-使用JS实现用户添加删除

JS笔记第六期(DOM练习)-使用JS实现用户添加删除

时间:2024-07-24 23:55:08浏览次数:12  
标签:name 删除 第六期 DOM tr JS 超链接 var Delete

要实现的界面为:

界面的CSS样式:

*{
	margin: 0 auto;
}
th,td{
			width: 200px;
			height: 50px;
			text-align:center ;
			font-size: 20px;
}
.tBox{
	border: #000000 1px solid;
	width: 450px;
	height: 250px;
	margin: 0 auto;
	padding: 10px;
	
}

JS+HTML:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>增删练习</title>
		<link rel="stylesheet" type="text/css" href="./css/table.css"/>
		<script type="text/javascript">
		window.onload=function(){
			//将删除信息封装为一个函数
			function delA(){
				var tr=this.parentNode.parentNode;
									//获取要删除的员工名字
									var name=tr.getElementsByTagName("td")[0].innerHTML;
									/* 删除之前跳出提示防止误删 
									confirm("确认删除吗?");//会跳出一个有确认和取消的提示框
									返回值是一个布尔值
									*/
				var flag=confirm("确认删除"+name+"吗?");
				if(flag){
									    tr.parentNode.removeChild(tr);
				}
									return false;
									/* 点击超链接以后超链接会自动跳转页面
									 我们不需要这个,可以在响应函数的最后返回false来取消这个行为
									 */
			}
			
			
			/* 
			点击超链接删除员工信息 
			for循环会在页面加载完成后立即执行,响应函数执行时,for循环已经执行完毕
			 */
			var allA=document.getElementsByTagName("a");
			for(var i=0;i<allA.length;i++){
				allA[i].onclick=delA;
			}
			/* 
			添加员工功能
			  -点击按钮之后将员工信息添加到表格 
			 */
			var addEmpButton=document.getElementById("addEmpButton");
			addEmpButton.onclick=function(){
			    //获取用户填写的信息
				var name=document.getElementById("empName").value;
				var email=document.getElementById("email").value;
				var salary=document.getElementById("salary").value;
				//将获取到的信息保存在tr中
				/* 
				方法1:先2创建td ,再创建tr,a,再创建文本, 再保存数据进去巴拉巴拉 
				方法2:见下
				*/
				var tr=document.createElement("tr");//创建一个tr
				//设置tr的值
				tr.innerHTML="<td>"+name+"</td>"
				             +"<td>"+email+"</td>"
				             +"<td>"+salary+"</td>"
							 +"<td><a href='javascript:;'>Delete</a></td>";
				//获取刚刚添加的超链接,并绑定单击事件
				var a=tr.getElementsByTagName("a")[0];
				a.onclick=delA;
				//添加到表格
				var employeeTable=document.getElementById("employeeTable");
				var tbody=employeeTable.getElementsByTagName("tbody")[0];
			    tbody.appendChild(tr);
				
			
			};
		};
		</script>
	</head>
	<body>
		<table id="employeeTable"  border="1" cellspacing="0" >
			<tr>
			<th>Name</th>
			<th>Email</th>
			<th>Salary</th>
			<th>&nbsp;</th>
			</tr>
			<tr>
				<td>Tom</td>
				<td>[email protected]</td>
				<td>5000</td>
				<td><a href="javascript:;">Delete</a></td>
			</tr>
			<tr>
				<td>Th</td>
				<td>[email protected]</td>
				<td>8000</td>
				<td><a href="deleteEmp?id=002">Delete</a></td>
			</tr>
			<tr>
				<td>Tx</td>
				<td>[email protected]</td>
				<td>9000</td>
				<td><a href="deleteEmp?id=003">Delete</a></td>
			</tr>
		</table>
		<br />	<br />	<br />
		<div id="formDiv" class="tBox">
			<h1 style="text-align: center;">添加新员工</h1>
			<table  >
				<tr>
				<td class="">name:</td>
				<td class="">
					<input type="text" name="empName" id="empName" />
				</td>
				</tr>
				<tr>
				<td class="">email:</td>
				<td class="">
					<input type="text" name="email" id="email" />
				</td>
				</tr>
				<tr>
				<td class="">salary:</td>
				<td class="">
					<input type="text" name="salary" id="salary" />
				</td>
				</tr>
				<tr>
					<td colspan="2" align="center">
						<button id="addEmpButton" value="abc">Submit</button>
					</td>
				</tr>
			</table>
			
		</div>
	</body>
</html>

标签:name,删除,第六期,DOM,tr,JS,超链接,var,Delete
From: https://blog.csdn.net/th891166/article/details/140672492

相关文章

  • javaWeb_JSP
    首先要对项目的pom.xml进行添加依赖点击查看代码<dependencies><!--Servlet依赖--><dependency><groupId>javax.servlet</groupId><artifactId>servlet-api</artifactId><version>2.5</version>&l......
  • [java][工具使用]使用hutool解析json
    使用hutool解析json注意点:1.数组和字典接受的对象和方法不一样        数组使用JSONArray       字典使用JSONObject2.如果字典中提取不存在的key,返回的结果nullpackagecn.npsel.test;importcn.hutool.json.JSONArray;importcn.hutool.json.JSONOb......
  • 什么是JSON,对JSON的理解
    SON是一种基于文本的轻量级的数据交换格式。它可以被任何的编程语言读取和作为数据格式来传递。在项目开发中,使用JSON作为前后端数据交换的方式。在前端通过将一个符合JSON格式的数据结构转为JSON字符串,然后将它传递到后端,后端通过JSON格式的字符串解析后生成对应的数......
  • nginx 代理eureka后css/js/fonts无法访问
    nginx代理eureka后css/js/fonts无法访问,页面没有样式server{listen80;server_nameyour_domain.com;location/eureka{proxy_passhttp://eureka_server_ip:8761;proxy_set_headerHost$host;proxy_set_headerX-Real-IP$remo......
  • Canvas+bpmn.js 流程节点鼠标悬浮显示信息 (全网首发)
    customBpmn.jsimportinheritsfrom"inherits";importViewerfrom"bpmn-js/lib/Viewer";importZoomScrollModulefrom"diagram-js/lib/navigation/zoomscroll";importMoveCanvasModulefrom"diagram-js/lib/navigation/moveca......
  • 自动化之Autox.js
    github: https://github.com/kkevsekk1/AutoX 官方文档:http://doc.autoxjs.com/1.安装vscode的扩展插件如果之前有使用 auto.js 的插件,需要移除,以免影响 autox.js 插件的使用。auto.js、autox.js代码提示补全插件安装搜索 Auto.js-Autox.js-VSCodeExt 插件......
  • 简单易用的分页插件 原生HTML分页功能 JS ajax对接后台数据接口的调用
    简单易用的分页插件原生HTML分页功能JSajax对接后台数据接口的调用先来看一下整体的效果图如下:今天给大家推荐jQuery-Paging插件,一个用于简化网页分页的轻量级工具,包含自定义样式、动态生成分页、事件处理和集成示例。详细说明了如何在HTML中使用该插件及其功能配置。......
  • js-数组内置函数-filter、map、forEach、reduce
    1、过滤数组-filter筛选数组元素,并生成新数组//过滤出分数为60分以上的数据<script>constarr=[{'name':'张三','score':80},{'name':'张六','score':50},{'name':'李四','scor......
  • Windows使用NVM管理node.js
    NVM(NodeVersionManager)是一个开源的命令行工具,用于管理多个版本的Node.js在同一台计算机上。NVM允许开发者轻松地安装、切换和管理不同版本的Node.js,这对于在多个项目上工作或测试Node.js的不同特性时非常有用。在macOS或Linux上,通常通过curl或wget下载安......
  • 【踩坑系列-JS】iframe中的url参数获取
    Author:赵志乾Date:2024-07-24Declaration:AllRightReserved!!!1.问题描述    系统A的页面中以iframe的方式嵌入了系统B的页面,并需要将A页面url中的参数传递给B页面。    最初的实现方式是:在B页面直接以下面的代码获取url参数,发现参数的值为undefined。let......