JS添加和刪除表格行


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>

	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
		<title>添加刪除記錄練習</title>
		<link rel="stylesheet" type="text/css" href="ex_2_style/css.css" />
		<script type="text/javascript">
		
			/*
			 * 刪除tr的響應函數
			 */
			function delA() {

				//點擊超鏈接以后需要刪除超鏈接所在的那行
				//這里我們點擊那個超鏈接this就是誰
				//獲取當前tr
				var tr = this.parentNode.parentNode;

				//獲取要刪除的員工的名字
				//var name = tr.getElementsByTagName("td")[0].innerHTML;
				var name = tr.children[0].innerHTML;

				//刪除之前彈出一個提示框
				/*
				 * confirm()用於彈出一個帶有確認和取消按鈕的提示框
				 * 	需要一個字符串作為參數,該字符串將會作為提示文字顯示出來
				 * 如果用戶點擊確認則會返回true,如果點擊取消則返回false
				 */
				var flag = confirm("確認刪除" + name + "嗎?");

				//如果用戶點擊確認
				if(flag) {
					//刪除tr
					tr.parentNode.removeChild(tr);
				}

				/*
				 * 點擊超鏈接以后,超鏈接會跳轉頁面,這個是超鏈接的默認行為,
				 * 	但是此時我們不希望出現默認行為,可以通過在響應函數的最后return false來取消默認行為
				 */
				return false;
			};

			window.onload = function() {

				/*
				 * 點擊超鏈接以后,刪除一個員工的信息
				 */

				//獲取所有額超鏈接
				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;
					//獲取員工的email和salary
					var email = document.getElementById("email").value;
					var salary = document.getElementById("salary").value;

					//alert(name+","+email+","+salary);
					/*
					 *  <tr>
							<td>Tom</td>
							<td>tom@tom.com</td>
							<td>5000</td>
							<td><a href="javascript:;">Delete</a></td>
						</tr>
						需要將獲取到的信息保存到tr中
					 */

					//創建一個tr
					var tr = document.createElement("tr");

					//設置tr中的內容
					tr.innerHTML = "<td>"+name+"</td>"+
									"<td>"+email+"</td>"+
									"<td>"+salary+"</td>"+
									"<td><a href='javascript:;'>Delete</a></td>";
									
					//獲取剛剛添加的a元素,並為其綁定單擊響應函數				
					var a = tr.getElementsByTagName("a")[0];
					a.onclick = delA;
					
					//獲取table
					var employeeTable = document.getElementById("employeeTable");
					//獲取employeeTable中的tbody
					var tbody = employeeTable.getElementsByTagName("tbody")[0];
					//將tr添加到tbodye中,此方法會把整個tbody的數據替換掉,不推薦使用
					tbody.appendChild(tr);
					/*tbody.innerHTML += "<tr>"+
					
					"<td>"+name+"</td>"+
									"<td>"+email+"</td>"+
									"<td>"+salary+"</td>"+
									"<td><a href='javascript:;'>Delete</a></td>"
					
					+"</tr>";*/

				};

			};
		</script>
		<script type="text/javascript">

            window.onload = function(){

                /*
                 * 點擊超鏈接以后,刪除一個員工的信息
                 */

                //獲取所有額超鏈接
                var allA = document.getElementsByTagName("a");

                //為每個超鏈接都綁定一個單擊響應函數
                for(var i=0 ; i < allA.length ; i++){
                    /*
                     * for循環會在頁面加載完成之后立即執行,
                     * 	而響應函數會在超鏈接被點擊時才執行
                     * 當響應函數執行時,for循環早已執行完畢
                     */

                    alert("for循環正在執行"+i);  //在頁面加載時,for 循環就依次執行了3次   i = 0,1,2,

                    allA[i].onclick = function(){

                        alert("響應函數正在執行"+i); //點擊a 標簽的時,響應函數才開始執行,此時i 已經是3 了

                        //alert(allA[i]);

                        return false;
                    };

                }

            };


		</script>
	</head>

	<body>

		<table id="employeeTable">
			<tr>
				<th>Name</th>
				<th>Email</th>
				<th>Salary</th>
				<th> </th>
			</tr>
			<tr>
				<td>Tom</td>
				<td>tom@tom.com</td>
				<td>5000</td>
				<td>
					<a href="javascript:;">Delete</a>
				</td>
			</tr>
			<tr>
				<td>Jerry</td>
				<td>jerry@sohu.com</td>
				<td>8000</td>
				<td>
					<a href="deleteEmp?id=002">Delete</a>
				</td>
			</tr>
			<tr>
				<td>Bob</td>
				<td>bob@tom.com</td>
				<td>10000</td>
				<td>
					<a href="deleteEmp?id=003">Delete</a>
				</td>
			</tr>
		</table>

		<div id="formDiv">

			<h4>添加新員工</h4>

			<table>
				<tr>
					<td class="word">name: </td>
					<td class="inp">
						<input type="text" name="empName" id="empName" />
					</td>
				</tr>
				<tr>
					<td class="word">email: </td>
					<td class="inp">
						<input type="text" name="email" id="email" />
					</td>
				</tr>
				<tr>
					<td class="word">salary: </td>
					<td class="inp">
						<input type="text" name="salary" id="salary" />
					</td>
				</tr>
				<tr>
					<td colspan="2" align="center">
						<button id="addEmpButton">
						Submit
					</button>
					</td>
				</tr>
			</table>

		</div>

	</body>

</html>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM