【JavaScript】DOM增删改练习

简介: DOM增删改练习

9e8db0ac3db34a658fbf86fce86b8343.gif

删除函数

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>


相关文章
|
7天前
|
JavaScript 前端开发
js之DOM 文档对象模型
js之DOM 文档对象模型
8 1
js之DOM 文档对象模型
|
8天前
|
XML JavaScript 前端开发
JavaScript中的DOM解析器DOMParser api的讲解
`DOMParser`能将XML或HTML源码字符串解析成DOM `Document`。通过`new DOMParser()`创建实例,使用`.parseFromString(string, type)`方法进行解析,其中`string`为待解析的字符串,`type`指定解析类型如`text/html`或`text/xml`等,返回一个`Document`对象。例如,可解析包含`&lt;p&gt;666&lt;/p&gt;`的字符串并获取其文本内容`666`。
13 1
|
4天前
|
JavaScript 前端开发
js之DOM 文档对象模型
js之DOM 文档对象模型
|
7天前
|
JavaScript 前端开发 容器
js之dom学习
js之dom学习
14 0
|
1月前
|
JavaScript
js HTML字符串转DOM节点,DOM节点转HTML字符串
js HTML字符串转DOM节点,DOM节点转HTML字符串
22 2
|
2月前
|
JavaScript 前端开发 算法
虚拟DOM是React的关键技术,它是个轻量的JS对象树,模拟实际DOM结构。
【6月更文挑战第27天】虚拟DOM是React的关键技术,它是个轻量的JS对象树,模拟实际DOM结构。当状态改变,React不直接修改DOM,而是先构建新的虚拟DOM树。通过 diff 算法比较新旧树,找到最小变更,仅更新必要部分,提高性能,避免频繁DOM操作。虚拟DOM还支持跨平台应用,如React Native。它优化了更新流程,简化开发,并提升了用户体验。
26 1
|
1月前
|
缓存 JavaScript API
js【详解】DOM
js【详解】DOM
13 0
|
1月前
|
JavaScript 前端开发
JavaScript 遍历DOM
JavaScript 遍历DOM
20 0
|
2月前
|
前端开发 JavaScript 程序员
探索JavaScript宝库:打开基础知识与实用技能之门(数据类型与变量+ 条件与循环+函数与模块+DOM+异常+ES6)
探索JavaScript宝库:打开基础知识与实用技能之门(数据类型与变量+ 条件与循环+函数与模块+DOM+异常+ES6)
21 0
|
2月前
|
前端开发 JavaScript 容器
技术经验解读:个人练习:使用HTML+CSS3制作图片轮播功能(不使用JavaScript)
技术经验解读:个人练习:使用HTML+CSS3制作图片轮播功能(不使用JavaScript)
45 0

热门文章

最新文章