js动态生成表格(节点操作)


Posted in Javascript onJanuary 12, 2021

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

针对DOM节点操作,该案例效果图如下(代码量不多,就没有结构与行为相分离):

js动态生成表格(节点操作)

原生js实现(注释里面解释了做法):

<!DOCTYPE html>
<html>
 <head>
 <meta charset="utf-8">
 <title></title>
 <style type="text/css">
 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>
 </head>
 <body>
 <table cellspacing="0">
 <thead>
 <tr>
  <th>姓名</th>
  <th>科目</th>
  <th>成绩</th>
  <th>操作</th>
 </tr>
 </thead>
 <tbody>
 </tbody>
 </table>
 </body>
 <script type="text/javascript">
 //因为里面的学生数据都是动态的,我们需要js动态生成 这里我们需要模拟数据,自己定义好数据
 // 数据我们采取对象形式储存
 //1 先准备好学生的数据
 //2 所有数据都是放到tbody里面(多少人,多少行)
 var datas = [{
 name: '刘舒新',
 subject: 'JavaScript',
 score: '100'
 }, {
 name: '宋祥隆',
 subject: 'JavaScript',
 score: '80'
 },
 {
 name: '崔健',
 subject: 'JavaScript',
 score: '90'
 },
 {
 name: '郄海淼',
 subject: 'JavaScript',
 score: '70'
 }
 ];
 //console.log(datas.length);
 var tbody = document.querySelector('tbody');
 for (var i = 0; i < datas.length; i++) {
 //创建行
 trs = document.createElement('tr');
 tbody.appendChild(trs);
 //创建单元格 td的数量取决于每个对象里面的属性个数
 for(var k in datas[i]){
 //创建单元格
 var td=document.createElement('td');
 //把对象里面的属性值 给td
 //console.log(datas[i][k]);
 td.innerHTML=datas[i][k];
 trs.appendChild(td);
 }
 
 //创建操作删除单元格
 var td=document.createElement('td');
 td.innerHTML='<a href="javascript:;" rel="external nofollow" >删除</a>'
 trs.appendChild(td);
 }
 //删除操作
 var a=document.querySelectorAll('a');
 for(var i=0;i<a.length;i++){
 a[i].onclick=function(){
 tbody.removeChild(this.parentNode.parentNode);
 }
 }
 </script>
</html>

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

Javascript 相关文章推荐
DWZ table的原生分页浅谈
Mar 01 Javascript
原生js编写autoComplete插件
Apr 13 Javascript
node.js从数据库获取数据
May 08 Javascript
纯JavaScript手写图片轮播代码
Oct 20 Javascript
JS中数组重排序方法
Nov 11 Javascript
Angularjs的启动过程分析
Jul 18 Javascript
基于JavaScript实现多级菜单效果
Jul 25 Javascript
浅谈Express异步进化史
Sep 09 Javascript
JavaScript实现微信号随机切换代码
Mar 09 Javascript
angularjs实现对表单输入改变的监控(ng-change和watch两种方式)
Aug 29 Javascript
JavaScript从原型到原型链深入理解
Jun 03 Javascript
js实现的格式化数字和金额功能简单示例
Jul 30 Javascript
Vue中ref和$refs的介绍以及使用方法示例
Jan 11 #Vue.js
JS addEventListener()和attachEvent()方法实现注册事件
Jan 11 #Javascript
JS removeAttribute()方法实现删除元素的某个属性
Jan 11 #Javascript
详解ES6 中的Object.assign()的用法实例代码
Jan 11 #Javascript
vue实现防抖的实例代码
Jan 11 #Vue.js
详解uniapp的全局变量实现方式
Jan 11 #Javascript
微信小程序抽奖组件的使用步骤
Jan 11 #Javascript
You might like
php cli模式学习(PHP命令行模式)
2013/06/03 PHP
thinkphp3.x中session方法的用法分析
2016/05/20 PHP
php json_encode与json_decode详解及实例
2016/12/13 PHP
ThinkPHP实现生成和校验验证码功能
2017/04/28 PHP
php实现文件上传基本验证
2020/03/04 PHP
js绑定事件this指向发生改变的问题解决方法
2013/04/23 Javascript
javascript函数声明和函数表达式区别分析
2014/12/02 Javascript
JavaScript制作简易的微信打飞机
2015/03/31 Javascript
jQuery实现html表格动态添加新行的方法
2015/05/28 Javascript
莱鸟介绍javascript onclick事件
2016/01/06 Javascript
关于input全选反选恶心的异常情况
2016/07/24 Javascript
D3.js实现文本的换行详解
2016/10/14 Javascript
基于Vuejs框架实现翻页组件
2020/06/29 Javascript
基于jquery实现的银行卡号每隔4位自动插入空格的实现代码
2016/11/22 Javascript
Angularjs验证用户输入的字符串是否为日期时间
2017/06/01 Javascript
Postman模拟发送带token的请求方法
2018/03/31 Javascript
layer插件select选中默认值的方法
2018/08/14 Javascript
Vue中 v-if/v-show/插值表达式导致闪现的原因及解决办法
2018/10/12 Javascript
vue与原生app的对接交互的方法(混合开发)
2018/11/28 Javascript
vue自定义指令用法经典实例小结
2019/03/16 Javascript
[39:21]LGD vs OG 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.24
2019/09/10 DOTA
列举Python中吸引人的一些特性
2015/04/09 Python
Python hexstring-list-str之间的转换方法
2019/06/12 Python
pycharm配置git(图文教程)
2019/08/16 Python
pytorch 自定义数据集加载方法
2019/08/18 Python
Pytorch学习之torch用法----比较操作(Comparison Ops)
2020/06/28 Python
SNIDEL官网:日本VIVI杂志人气少女第一品牌
2020/03/12 全球购物
房产代理公证处委托书
2014/04/04 职场文书
高考寄语大全
2014/04/08 职场文书
团结演讲稿范文
2014/05/23 职场文书
会计电算化专业求职信
2014/06/10 职场文书
世界名著读书笔记
2015/06/25 职场文书
保外就医申请书范文
2015/08/06 职场文书
pytorch加载预训练模型与自己模型不匹配的解决方案
2021/05/13 Python
Redis基本数据类型Zset有序集合常用操作
2022/06/01 Redis
pandas时间序列之pd.to_datetime()的实现
2022/06/16 Python