案例4_动态表格添加和案例4_动态表格删除
案例4_动态表格添加:
分析:
1,添加
(1).给添加按钮绑定事件
(2).获取文本框内容
(3).创建td设置td的文本框的内容
(4).创建tr
(5).将td添加到tr中
(6).获取table,将tr添加到table中
代码实现:
<head> <meta charset="UTF-8"> <title>动态表格添加</title> <style> table{ border: 1px solid; margin: auto;/* 外边距居中 */ width: 500px; } td,th{ text-align: center;/* 文字居中 */ border: 1px solid; } div{ text-align: center; margin: 50px; } </style> </head> <body> <div> <input id="id" type="text" placeholder="请输入编号"> <input id="name" type="text" placeholder="请输入姓名"> <input id="gender" type="text" placeholder="请输入性别"> <input id="btn_add" type="button" value="添加"> </div> <table> <caption>学生信息表</caption><!-- 标题 --> <tr> <!-- 表头 --> <th>编号</th> <th>姓名</th> <th>性别</th> <th>操作</th> </tr> <tr> <!-- 身体 --> <td>1</td> <td>魔</td> <td>冰</td> <td><a href="javascript:void(0);" onclick="delTr(this);">删除</a></td> </tr> <tr> <td>2</td> <td>遁</td> <td>刀</td> <td><a href="javascript:void(0);" onclick="delTr(this);">删除</a></td> </tr> <tr> <td>3</td> <td>机</td> <td>引</td> <td><a href="javascript:void(0);" onclick="delTr(this);">删除</a></td> </tr> </table> <script> //1获取按钮 document.getElementById("btn_add").onclick = function (){ //2获取文本框的内容 let id = document.getElementById("id").value; let name = document.getElementById("name").value; let gender = document.getElementById("gender").value; //3创建td 赋值td的标签体 //id 的 td var td_id = document.createElement("td");// 在对象中创建一个对象 let text_id = document.createTextNode(id);// 创建节点 td_id.appendChild(text_id);// 添加进去 //name 的 td var td_name = document.createElement("td");// 在对象中创建一个对象 let text_name = document.createTextNode(name);// 创建节点 td_name.appendChild(text_name);// 添加进去 //gender 的 td var td_gender = document.createElement("td");// 在对象中创建一个对象 let text_gender = document.createTextNode(gender);// 创建节点 td_gender.appendChild(text_gender);// 添加进去 </script> </body>
案例4_动态表格删除:
1,删除
(1).确定点击的是哪一个超链接
<td><a href="javascript:void(0);" onclick="delTr(this);">删除</a></td>
(2).怎么删除
removeChild():通过父节点删除子节点
代码实现:
<head> <meta charset="UTF-8"> <title>动态表格添加</title> <style> table{ border: 1px solid; margin: auto;/* 外边距居中 */ width: 500px; } td,th{ text-align: center;/* 文字居中 */ border: 1px solid; } div{ text-align: center; margin: 50px; } </style> </head> <body> <div> <input id="id" type="text" placeholder="请输入编号"> <input id="name" type="text" placeholder="请输入姓名"> <input id="gender" type="text" placeholder="请输入性别"> <input id="btn_add" type="button" value="添加"> </div> <table> <caption>学生信息表</caption><!-- 标题 --> <tr> <!-- 表头 --> <th>编号</th> <th>姓名</th> <th>性别</th> <th>操作</th> </tr> <tr> <!-- 身体 --> <td>1</td> <td>魔</td> <td>冰</td> <td><a href="javascript:void(0);" onclick="delTr(this);">删除</a></td> </tr> <tr> <td>2</td> <td>遁</td> <td>刀</td> <td><a href="javascript:void(0);" onclick="delTr(this);">删除</a></td> </tr> <tr> <td>3</td> <td>机</td> <td>引</td> <td><a href="javascript:void(0);" onclick="delTr(this);">删除</a></td> </tr> </table> <script> //a标签td var td_a = document.createElement("td"); let ele_a = document.createElement("a"); //设置属性 ele_a.setAttribute("href","javascript:void(0)"); ele_a.setAttribute("onclick","delTr(this)"); let text_a = document.createTextNode("删除");// 文本内容 ele_a.appendChild(text_a); td_a.appendChild(ele_a); //4创建tr let tr = document.createElement("tr"); //5.将td添加到tr中 tr.appendChild(td_id); tr.appendChild(td_name); tr.appendChild(td_gender); tr.appendChild(td_a); //6.获取table,将tr添加到table中 let table = document.getElementsByTagName("table")[0];// 获取标签名 table.appendChild(tr); } //删除方法 function delTr(obj){ var table = obj.parentNode.parentNode.parentNode; var tr = obj.parentNode.parentNode; table.removeChild(tr); } </script> </body>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?