JavaScript中表格的添加与删除

代码如下

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
         table{
            border-collapse: collapse;
        }

        table td{
            width: 100px;
            line-height: 30px;
            border: 1px solid #000;
            text-align: center;
        }
    </style>
</head>
<body>
    姓名:<input type="text"><br>
    年龄:<input type="number"><br>
    性别:男<input type="radio" value="男" name="sex">
        女<input type="radio" value="女" name="sex">
        保密<input type="radio" value="保密" name="sex"><br>
    城市:<select>
        <option value="北京">北京</option>
        <option value="上海">上海</option>
        <option value="广州">广州</option>
        <option value="深圳">深圳</option>
        <option value="天津">天津</option>
    </select><br>
    <button name="add">新增</button>
    <table>
        <thead>
            <tr>
                <td>序号</td>
                <td>姓名</td>
                <td>年龄</td>
                <td>性别</td>
                <td>城市</td>
                <td>删除</td>
            </tr>
        </thead>
        <tbody></tbody>
    </table>
    <script>
        var arr = [
            { name:'张三' , age:18, sex:'男', city:'北京' },
            { name:'李四' , age:19, sex:'女', city:'上海' },
            { name:'王五' , age:28, sex:'男', city:'广州' },
            { name:'赵六' , age:38, sex:'女', city:'深圳' },
            { name:'刘七' , age:48, sex:'保密', city:'天津' }   
        ];
        
        var oTb = document.querySelector( 'tbody' );
        var oBtn = document.querySelector( '[name="add"]' );
        setTab();
        oBtn.onclick = function(){
            var oIptName = document.querySelector( '[type="text"]' ).value;
            var oIptAge = document.querySelector( '[type="number"]' ).value;
            var oIptSex = document.querySelectorAll( '[type="radio"]' );
            var oIptSexVal = 0;
            oIptSex.forEach( function( item ){
                if( item.checked === true ){
                    oIptSexVal = item.value
                }
            } );
            var oIptCity = document.querySelector( 'select' ).value;
            var obj = { name:oIptName , age:oIptAge , sex:oIptSexVal, city:oIptCity };
            arr.push(obj);
            setTab();
        }
        
      

        function setTab(){
            var str = '';
            arr.forEach(function(item,key){
                str += '<tr>';
                str += `<td>${key+1}</td>`;
                for(var k in item){
                    str += `<td>${item[k]}</td>`;
                }
                str += `<td><button index="${key}">删除</button></td>`;
                str += '</tr>';
            })
            oTb.innerHTML = str;
            del()
        }
        
        function del(){
            var oBtnDel = document.querySelectorAll('tbody  button')
            oBtnDel.forEach(function(item){
                item.onclick = function(){
                    var index = item.getAttribute('index');
                    arr.splice(index,1);
                    setTab();
                }
            })
        }
        
        
    </script>
</body>
</html>

表格实现效果
在这里插入图片描述
增加数据
在这里插入图片描述

删除数据
在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值