JavaScript web编程

2021-04-22 14:53:33 浏览数 (1)

js动态添加表格

代码语言:javascript复制
<style>
        table {
            width: 500px;
            margin: 100px auto;
            border-collapse: collapse;
            text-align: center;
        }
        
        td,
        th {
            border: 1px solid #333;
        }
        
        thead tr {
            height: 40px;
            background-color: #ccc;
        }
    </style>
代码语言:javascript复制
<body>
    <table cellspacing="0">
        <thead>
            <tr>
                <th>姓名</th>
                <th>科目</th>
                <th>成绩</th>
                <th>操作</th>
            </tr>
        </thead>
        <tbody>
        </tbody>
    </table>
    <script>
        //1.先准备好学生的数据
        var dates = [{
            name: '张三',
            subject: 'javascript',
            score: 100
        }, {
            name: '李四',
            subject: 'javascript',
            score: 98
        }, {
            name: '刘琦',
            subject: 'javascrpt',
            score: 90
        }, {
            name: '林冲',
            subject: 'javascrpt',
            score: 88
        }];
        //2.往tbody里面创建行,有几个人我们就创建几行
        var tbody = document.querySelector('tbody');
        for (var i = 0; i < dates.length; i  ) //for外面的循环管tr{
        {
            var tr = document.createElement('tr');
            tbody.appendChild(tr);
            //行里面创建单元格 根据属性的个数for内循环
            for (var k in dates[i]) {
                var td = document.createElement('td');
                //把属性值赋值给td
                td.innerHTML = dates[i][k];
                tr.appendChild(td);
            }

            //3.创建有删除两个字的单元格
            var td = document.createElement('td');
            td.innerHTML = '删除 '
            tr.appendChild(td);
        }
        //4.删除操作
        var as = document.querySelectorAll('a');
        for (var i = 0; i < as.length; i  ) {
            as[i].onclick = function() {
                tbody.removeChild(this.parentNode.parentNode)
            }
        }
    </script>
</body>

在实际开发中有些东西并不是静态的,要随着改变,比如表格内容,有些资料是从后台数据库中获取的,以上就是用js制作的一个表格案例,更加的灵活。 效果图如下:

以下还有一些注意点需要我们记住:

复习

0 人点赞