zoukankan      html  css  js  c++  java
  • 添加元素节点-html

    <!DOCTYPE html>
    <html>
    <head>
    <title>节点添加与删除练习</title>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <style type="text/css">
    div {
        text-align: center;
        background-color: #c0c0c0;
        width: 65%;
        height: 65%;
    }
    </style>
    
    <script type="text/javascript">
        //要求:动态向table中添加信息,并可以删除
        window.onload = function() {
            /*
             当点击按钮时,将信息得到,并手动封装成字符串
             "<tr><td>username</td><td>email</td><td>telephone</td><td><a href='#' onclick='delRow(this)'>Delete</a></td></tr>"
            
             得到id为tab的table,合适innerHTML+=上面的字符串.
            
            
             问题:当点击超链接时,怎样删除当前行.
            
             当超链接被点击时,调用一个delRow方法,将this传递到delRow方法中.
             在delRow方法中可以通过 parentNode.parentNode得到最终要删除的tr。
             在通过table调用removeChild方法将这一行删除。
             */
             
             document.getElementById("btn").onclick=function(){
                 //1.得到信息.
                 var username=document.getElementById("username").value;
                 var email=document.getElementById("email").value;
                 var telephone=document.getElementById("telephone").value;
                 
                 //2.拼出字符串.
                 var msg="<tr><td>"+username+"</td><td>"+email+"</td><td>"+telephone+"</td><td><a href='#' onclick='delRow(this)'>Delete</a></td></tr>"
                 
                //3.将msg添加到table中.
                
                document.getElementById("tab").innerHTML+=msg;
                 
                 document.getElementById("username").value="";
                 document.getElementById("email").value="";
                 document.getElementById("telephone").value="";
             }
        };
        
        function delRow(t){
            document.getElementById("tab").removeChild(t.parentNode.parentNode.parentNode);
            
            //t.parentNode.parentNode.parentNode.removeChild(t.parentNode.parentNode);
        }
    </script>
    
    </head>
    
    <body>
        <div>
            <br> <br> 姓名: <input type="text" id="username">
            EMAIL: <input type="text" id="email"> 电话: <input type="text"
                id="telephone"> <br> <br> <input type="button"
                value="添加" id="btn">
            <hr>
    
            <table id="tab" border='1' align="center" width="85%">
                <tr>
                    <th>姓名</th>
                    <th>EMAIL</th>
                    <th>电话</th>
                    <th>操作</th>
                </tr>
            </table>
        </div>
    </body>
    </html>
  • 相关阅读:
    结合<span id="outer"><span id="inter">text</span></span>这段结构,谈谈innerHTML、outerHTML、innerText之间的区别
    字符串的方法slice、substr、substring对比
    为什么两个一样的对象,用===打印是false
    this指向
    复制对象的方法
    Promise以及async和await的用法
    前端性能优化&&网站性能优化
    P1510 精卫填海
    分解质因数
    P2648 赚钱
  • 原文地址:https://www.cnblogs.com/spadd/p/4192609.html
Copyright © 2011-2022 走看看