JavaScript动态生成带删除行功能的表格

 更新时间:2021年09月30日 11:03:41   作者:qq_39111074  
这篇文章主要为大家详细介绍了JavaScript动态生成带删除行功能的表格,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了javascript实现动态生成表格/删除行的具体代码,供大家参考,具体内容如下

动态生成一个带删除行功能的表格:

实现思路

1、获取表格<tbody>元素
2、获取要填充的数据,一般是从数据库取数据,也可以自己模拟一组数据进行测试,数据是以对象的形式存储的,多行数据可以用数组进行存储,数组中每一项均为一个对象
3、①循环遍历对象数组,创建行,
②嵌套一个循环- - -循环遍历对象:
a.根据属性创建所需个数的单元格,
b.并给单元格赋值,
c.然后添加单元格到行中,
③添加一个单元格,并赋值一个a链接,文本内容- - -“删除”,将该单元格添加到行
4、添加改行到tbody中
5、获取所有的 a 元素- - -document.querySelectorAll(‘a'),获得一个对象数组
6、循环遍历 a 对象数组,给 a 链接绑定点击事件,添加删除功能- - -tbody.removeChild(this.parentNode.parentNode);

代码示例

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>动态生成表格</title>
    <style>
        table {
            border: 1px solid pink;
            border-collapse: collapse;
        }
        
        thead {
            background-color: #ddd;
        }
    </style>
</head>

<body>
    <table border="1" cellpadding="5" cellspacing="0" align="center" width="600px">
        <thead>
            <tr>
                <th>姓名</th>
                <th>科目</th>
                <th>成绩</th>
                <th>操作</th>
            </tr>
        </thead>
        <tbody>

        </tbody>
    </table>
    <script>
        var tbody = document.querySelector('tbody');

        var list = [{
            'name': '海绵宝宝',
            'subject': 'JavaScript',
            'age': 66
        }, {
            'name': '哆唻爱梦',
            'subject': 'JavaScript',
            'age': 99
        }, {
            'name': '史迪仔',
            'subject': 'JavaScript',
            'age': 60
        }, {
            'name': '皮卡丘',
            'subject': 'JavaScript',
            'age': 88
        }];

        for (var i = 0; i < list.length; i++) {
            // 一、创建行
            var tr = document.createElement('tr');

            // 二、填充数据
            for (var k in list[i]) {
                console.log(list[i][k]);
                // 1.创建td单元格
                var td = document.createElement('td');
                // 单元格填充内容
                td.innerHTML = list[i][k];
                // 2.添加单元格
                tr.appendChild(td);
            }
            // 三、添加删除链接
            var td = document.createElement('td');
            td.innerHTML = '<a href="javascript:;" >删除</a>';
            tr.appendChild(td);
            // 四、添加行
            tbody.appendChild(tr);
        }

        // 添加删除功能
        var as = document.querySelectorAll('a');
        for (var i = 0; i < as.length; i++) {
            as[i].onclick = function() {
                tbody.removeChild(this.parentNode.parentNode);
            }
        }

        console.log(tbody.childNodes);
        console.log(tbody.children);
    </script>
</body>

</html>

页面效果:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 对layui中表单元素的使用详解

    对layui中表单元素的使用详解

    今天小编就为大家分享一篇对layui中表单元素的使用详解。具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-08-08
  • js实现用户输入的小写字母自动转大写字母的方法

    js实现用户输入的小写字母自动转大写字母的方法

    下面小编就为大家带来一篇js实现用户输入的小写字母自动转大写字母的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-01-01
  • JS移动端/H5同时选择多张图片上传并使用canvas压缩图片

    JS移动端/H5同时选择多张图片上传并使用canvas压缩图片

    这篇文章主要介绍了JS移动端/H5同时选择多张图片上传并使用canvas压缩图片,需要的朋友可以参考下
    2017-06-06
  • setTimeout与setInterval的区别浅析

    setTimeout与setInterval的区别浅析

    这篇文章主要给大家介绍了关于setTimeout与setInterval区别的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用js具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-03-03
  • Cropper.js进阶之固定宽高图片裁切实现示例

    Cropper.js进阶之固定宽高图片裁切实现示例

    这篇文章主要为大家介绍了Cropper.js进阶之固定宽高图片裁切实现示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-05-05
  • 一文详解TypeScript中的内置数据类型

    一文详解TypeScript中的内置数据类型

    作为一门类型安全的编程语言,TypeScript 提供了多种内置数据类型,帮助我们更好地定义和操作数据,下面小编就来和大家详细聊聊这些数据类型的相关知识吧
    2023-06-06
  • 微信小程序实现富文本图片宽度自适应的方法

    微信小程序实现富文本图片宽度自适应的方法

    小程序里图片会显示不全,这时就应该做相应的处理,使小程序里图片显示正确,这篇文章主要介绍了微信小程序实现富文本图片宽度自适应的方法,感兴趣的小伙伴们可以参考一下
    2019-01-01
  • 基于JavaScript实现一个简单的Vue

    基于JavaScript实现一个简单的Vue

    这篇文章主要介绍了基于JavaScript实现一个简单的Vue的方法,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-09-09
  • 详解webpack引用jquery(第三方模块)的三种办法

    详解webpack引用jquery(第三方模块)的三种办法

    这篇文章主要介绍了详解webpack引用jquery(第三方模块)的三种办法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08
  • JavaScript常用数组去重实战源码

    JavaScript常用数组去重实战源码

    本文给大家分享js常用8种数组去重实战源码,针对每种方法通过实例代码给大家介绍的非常详细,需要的朋友参考下吧
    2021-07-07

最新评论