【JavaScript】DOM增删改练习

简介: 【JavaScript】DOM增删改练习

实现效果:



删除函数


var del = function(){
     var tr = this.parentNode.parentNode;
     var name = tr.getElementsByTagName("td")[0].innerHTML;
     if(confirm("确定删除"+name+"吗?")){
         tr.parentNode.removeChild(tr);
     }                   
     return false;
     }


单击删除事件


     var a_list = document.getElementsByTagName("a");
     for(var i = 0; i<a_list.length; i++){
         a_list[i].onclick =  del;
         };


添加信息


 document.getElementById('sub').onclick = function(){
     //查找姓名
      var name = document.getElementById('addname').value;
      //邮箱
      var email = document.getElementById('addemail').value;
      //联系方法
      var tel = document.getElementById('addtel').value;
      //创建一个tr
      var tr = document.createElement("tr");
      tr.innerHTML = "<td>"+name+"</td>"+
                      "<td>"+email+"</td>"+
                      "<td>"+tel+"</td>"+
                      "<td><a href=''>删除信息</a></td>";
      var a = tr.getElementsByTagName("a")[0];
      a.onclick = del;
      //找到tbody
      var tbody = document.getElementsByTagName("tbody")[0];
      //将tr放在tbody内
      tbody.appendChild(tr);
  }


css代码


        div{
            margin-top: 20px;
        }
        #sub{
             margin-left: 100px;
        }


html代码


 <div>
    <table border="1px" id="tab1">
        <tr>
            <th>姓名</th>
            <th>邮箱</th>
            <th>联系方式</th>
            <th>&nbsp;</th>
        </tr>
        <tr>
            <td>苏凉</td>
            <td>123@qq.com</td>
            <td>123</td>
            <td><a href="">删除信息</a></td>
        </tr>
        <tr>
            <td>suliang</td>
            <td>4253@qq.com</td>
            <td>4253</td>
            <td><a href="">删除信息</a></td>
        </tr>
    </table>
    </div>
    <div>
    <table border="1px" id="tab2">
        <tr>
            <th colspan="2" >添加信息</th>
        </tr>
        <tr>
            <td>姓名:</td>
            <td><input type="text" id="addname" name="name"></td>
        </tr>
        <tr>
            <td>邮箱:</td>
            <td><input type="text" id="addemail" name="email"></td>
        </tr>
        <tr>
            <td>联系方式:</td>
            <td><input type="text" id="addtel" name="tel"></td>
        </tr>
        <tr>
            <td colspan="2"><input type="submit" id="sub"></td>
        </tr>
    </table>
    </div>


全部代码


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        //删除
        var del = function(){
                    var tr = this.parentNode.parentNode;
                    var name = tr.getElementsByTagName("td")[0].innerHTML;
                    if(confirm("确定删除"+name+"吗?")){
                        tr.parentNode.removeChild(tr);
                    }                   
                    return false;
                    }
        window.onload = function(){
            var a_list = document.getElementsByTagName("a");
            for(var i = 0; i<a_list.length; i++){
                a_list[i].onclick =  del;
                };
            document.getElementById('sub').onclick = function(){
                //查找姓名
                var name = document.getElementById('addname').value;
                //邮箱
                var email = document.getElementById('addemail').value;
                //联系方法
                var tel = document.getElementById('addtel').value;
                //创建一个tr
                var tr = document.createElement("tr");
                tr.innerHTML = "<td>"+name+"</td>"+
                                "<td>"+email+"</td>"+
                                "<td>"+tel+"</td>"+
                                "<td><a href=''>删除信息</a></td>";
                var a = tr.getElementsByTagName("a")[0];
                a.onclick = del;
                //找到tbody
                var tbody = document.getElementsByTagName("tbody")[0];
                //将tr放在tbody内
                tbody.appendChild(tr);
            }
        }
    </script>
    <style>
        div{
            margin-top: 20px;
        }
        #sub{
             margin-left: 100px;
        }
    </style>
</head>
<body>
    <div>
    <table border="1px" id="tab1">
        <tr>
            <th>姓名</th>
            <th>邮箱</th>
            <th>联系方式</th>
            <th>&nbsp;</th>
        </tr>
        <tr>
            <td>苏凉</td>
            <td>123@qq.com</td>
            <td>123</td>
            <td><a href="">删除信息</a></td>
        </tr>
        <tr>
            <td>suliang</td>
            <td>4253@qq.com</td>
            <td>4253</td>
            <td><a href="">删除信息</a></td>
        </tr>
    </table>
    </div>
    <div>
    <table border="1px" id="tab2">
        <tr>
            <th colspan="2" >添加信息</th>
        </tr>
        <tr>
            <td>姓名:</td>
            <td><input type="text" id="addname" name="name"></td>
        </tr>
        <tr>
            <td>邮箱:</td>
            <td><input type="text" id="addemail" name="email"></td>
        </tr>
        <tr>
            <td>联系方式:</td>
            <td><input type="text" id="addtel" name="tel"></td>
        </tr>
        <tr>
            <td colspan="2"><input type="submit" id="sub"></td>
        </tr>
    </table>
    </div>
</body>
</html>
目录
相关文章
|
2月前
|
JavaScript 前端开发 Go
CSS 与 JS 对 DOM 解析和渲染的影响
【10月更文挑战第16天】CSS 和 JS 会在一定程度上影响 DOM 解析和渲染,了解它们之间的相互作用以及采取适当的优化措施是非常重要的。通过合理的布局和加载策略,可以提高网页的性能和用户体验,确保页面能够快速、流畅地呈现给用户。在实际开发中,要根据具体情况进行权衡和调整,以达到最佳的效果。
|
1月前
|
JavaScript 前端开发 索引
js中DOM的基础方法
【10月更文挑战第31天】这些DOM基础方法是操作网页文档结构和实现交互效果的重要工具,通过它们可以动态地改变页面的内容、样式和行为,为用户提供丰富的交互体验。
|
1月前
|
缓存 JavaScript 前端开发
JavaScript 与 DOM 交互的基础及进阶技巧,涵盖 DOM 获取、修改、创建、删除元素的方法,事件处理,性能优化及与其他前端技术的结合,助你构建动态交互的网页应用
本文深入讲解了 JavaScript 与 DOM 交互的基础及进阶技巧,涵盖 DOM 获取、修改、创建、删除元素的方法,事件处理,性能优化及与其他前端技术的结合,助你构建动态交互的网页应用。
49 5
|
1月前
|
JavaScript 前端开发 开发者
.js的dom元素操作
【10月更文挑战第29天】通过灵活运用这些 DOM 元素操作方法,JavaScript 可以实现丰富的网页交互效果,如动态更新页面内容、响应用户操作、创建和删除页面元素等。在实际开发中,开发者可以根据具体的需求和场景,选择合适的 DOM 元素操作方法来实现所需的功能,为用户提供更加流畅和动态的网页体验。
|
2月前
|
JavaScript 前端开发 容器
js之dom学习
js之dom学习
48 0
|
1月前
|
JavaScript 前端开发
JavaScript中的原型 保姆级文章一文搞懂
本文详细解析了JavaScript中的原型概念,从构造函数、原型对象、`__proto__`属性、`constructor`属性到原型链,层层递进地解释了JavaScript如何通过原型实现继承机制。适合初学者深入理解JS面向对象编程的核心原理。
29 1
JavaScript中的原型 保姆级文章一文搞懂
|
5月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
107 2
|
1月前
JS+CSS3文章内容背景黑白切换源码
JS+CSS3文章内容背景黑白切换源码是一款基于JS+CSS3制作的简单网页文章文字内容背景颜色黑白切换效果。
21 0
|
5月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的小区物流配送系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的小区物流配送系统附带文章源码部署视频讲解等
155 4
|
5月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的宠物援助平台附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的宠物援助平台附带文章源码部署视频讲解等
90 4