利用js动态的向table等元素添加数据

本文演示了如何使用JavaScript在HTML表格中动态添加数据。通过创建新的行和单元格,并将用户输入的数据插入到表格中,实现了数据的动态展示。同时,文章还展示了删除表格行的功能,增强了交互性。

<!DOCTYPE html>//页面元素
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <link rel="stylesheet" href="css/cs.css" />
    </head>
    <body>
        <div id="top">
        <p align="center">添加员工</p>
        Name<input type="text" id="name" />
        Email<input type="text" id="email" />
        Salary<input type="text" id="salary" />
        <p></p>
        <input type="submit" value="添加" id="bt" name="bt" onclick="insert()" />
        <p>-------------------------------------------------------</p>
        </div>
        <table id="tab" border="2" cellpadding="1" cellspacing="0">
            <tr>
                 <th>Name</th>
                 <th>Email</th>
                 <th>Salary</th>
            </tr>
            <tr>
                <td>Tmo</td>
                <td>Tmo@163.com</td>
                <td>5000</td>
                <td><a href="#">Delete</a></td>
            </tr>
            <tr>
                <td>Jerry</td>
                <td>Jerry@163.com</td>
                <td>6000</td>
                <td><a href="#">Delete</a></td>
            </tr>
            <tr>
                <td>bob</td>
                <td>bob@163.com</td>
                <td>7000</td>
                <td><a href="#">Delete</a></td>
            </tr>
        </table>
    </body>
</html>

<script>

    window.onload = function(){
            function delTr(aNode){
                var tr =  aNode.parentNode.parentNode;
                var nameStr = tr.getElementsByTagName("td")[0].firstChild.nodeValue;
                var flag = confirm("s"+nameStr);
                if(flag){
                    tr.parentNode.removeChild(tr);
                }
            }
            var table = document.getElementById("tab");
            var aNodes = table.getElementsByTagName("a");
            for(var i = 0;i<aNodes.length;i++){
                aNodes[i].onclick = function(){
                    delTr(this);
                }
            }
            document.getElementById("bt").onclick = function(){
                       
            var name = document.getElementById("name").value;
            var email = document.getElementById("email").value;
            var salary = document.getElementById("salary").value;
            var de = document.createElement("a");
            var tr = document.createElement("tr");
            
            var tname = document.createElement("td");
            var temail = document.createElement("td");
            var tsalary = document.createElement("td");
            var tde = document.createElement("td");
            
            tr.appendChild(tname);
            tr.appendChild(temail);
            tr.appendChild(tsalary);
            tr.appendChild(tde);
            
            var textname = document.createTextNode(name);
            var textemai = document.createTextNode(email);
            var textsalary = document.createTextNode(salary);
            var textdel = document.createTextNode("Delete");
            
            tname.appendChild(textname);
            temail.appendChild(textemai);
            tsalary.appendChild(textsalary);
            de.appendChild(textdel);
            tde.appendChild(de);
            
            document.getElementById("tab").appendChild(tr);
            de.onclick = function(){
                delTr(this);
            }
            
            }
        }

</script>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值