原生JS实现添加、删除行

效果

在这里插入图片描述

代码

<!DOCTYPE html>
<html>

<head>
    <title>原生JS实现添加、删除行</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>

<body>
    <table border="1" width="50%" id="table">
        <tr>
            <th>学号</th>
            <th>姓名</th>
            <th>操作</th>
        </tr>

        <tr>
            <td>xh001</td>
            <td>王小明</td>
            <td><a href="#" onclick="deltr(this)">删除</a></td>
        </tr>

        <tr>
            <td>xh002</td>
            <td>刘小芳</td>
            <td><a href="#" onclick="deltr(this)">删除</a></td>
        </tr>

    </table>
    <input type="button" value="添加一行" onclick="addtr()" />
    <!--在添加按钮上添加点击事件  -->


    <script>
        let table = document.getElementById("table");
        let arr = document.getElementsByTagName("tr");
        let xh = 2;
        console.log(arr);

        //创建删除函数
        function deltr(obj) {
            let tr = obj.parentNode.parentNode;
            tr.parentNode.removeChild(tr);
        }

        //编写一个函数,供添加按钮调用,动态在表格的最后一行添加子节点;
        function addtr() {
            //创建tr
            let trobj = document.createElement("tr");
            //创建td
            let tdobj1 = document.createElement("td");
            let tdobj2 = document.createElement("td");
            let tdobj3 = document.createElement("td");
            xh++;
            if (xh < 10) {
                tdobj1.innerText = `xh00${xh}`;
            } else if (xh < 100) {
                tdobj1.innerText = `xh0${xh}`;
            } else {
                tdobj1.innerText = `xh${xh}`;
            }
            tdobj2.innerText = prompt("请输入学员的姓名", '未录入');
            tdobj3.innerHTML = "<a href='#' οnclick='deltr(this)'>删除</a>";
            //添加td到tr
            trobj.appendChild(tdobj1);
            trobj.appendChild(tdobj2);
            trobj.appendChild(tdobj3);
            //添加tr到table
            table.appendChild(trobj);
        }
    </script>
</body>

</html>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值