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 相关文章推荐
Ext 表单布局实例代码
Apr 30 Javascript
contains和compareDocumentPosition 方法来确定是否HTML节点间的关系
Sep 13 Javascript
JavaScript高级程序设计(第3版)学习笔记11 内建js对象
Oct 11 Javascript
解决checkbox的attr(checked)一直为undefined问题
Jun 16 Javascript
jQuery插件Skippr实现焦点图幻灯片特效
Apr 12 Javascript
javascript中使用正则表达式清理table样式的代码
Apr 01 Javascript
深入理解在JS中通过四种设置事件处理程序的方法
Mar 02 Javascript
微信小程序 连续旋转动画(this.animation.rotate)详解
Apr 07 Javascript
javaScript手机号码校验工具类PhoneUtils详解
Dec 08 Javascript
解决Vue axios post请求,后台获取不到数据的问题方法
Aug 11 Javascript
php结合js实现多条件组合查询
May 28 Javascript
node.js 如何监视文件变化
Sep 01 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
全国FM电台频率大全 - 29 青海省
2020/03/11 无线电
基于php伪静态的实现详细介绍
2013/04/28 PHP
php二维数组排序方法(array_multisort usort)
2013/12/25 PHP
php天翼开放平台短信发送接口实现方法
2014/12/22 PHP
php使用socket post数据到其它web服务器的方法
2015/06/02 PHP
Laravel 5.4因特殊字段太长导致migrations报错的解决
2017/10/22 PHP
如何让PHP编码更加好看利于阅读
2019/05/12 PHP
safari,opera嵌入iframe页面cookie读取问题解决方法
2010/06/23 Javascript
js禁止小键盘输入数字功能代码
2011/08/01 Javascript
Javascript的getYear、getFullYear、getUTCFullYear异同分享
2011/11/30 Javascript
js实现一个省市区三级联动选择框代码分享
2013/03/06 Javascript
javascript二维数组转置实例
2015/01/22 Javascript
javascript实现方法调用与方法触发小结
2016/03/26 Javascript
浅析Javascript中bind()方法的使用与实现
2016/04/29 Javascript
省市选择的简单实现(基于zepto.js)
2016/06/21 Javascript
jQuery实现动态生成表格并为行绑定单击变色动作的方法
2017/04/17 jQuery
微信小程序左滑删除实现代码实例
2019/09/16 Javascript
Vue实现简单计算器案例
2020/02/25 Javascript
python将文本转换成图片输出的方法
2015/04/28 Python
神经网络(BP)算法Python实现及应用
2018/04/16 Python
Python变量访问权限控制详解
2019/06/29 Python
python使用pip安装SciPy、SymPy、matplotlib教程
2019/11/20 Python
Scrapy框架基本命令与settings.py设置
2020/02/06 Python
Python中的xlrd模块使用原理解析
2020/05/21 Python
TensorFlow keras卷积神经网络 添加L2正则化方式
2020/05/22 Python
CSS3制作气泡对话框的实例教程
2016/05/10 HTML / CSS
css3实现书本翻页效果的示例代码
2021/03/08 HTML / CSS
海淘母婴商城:国际妈咪
2016/07/23 全球购物
车祸赔偿收入证明
2014/01/09 职场文书
教师档案管理制度
2014/01/23 职场文书
标准化管理实施方案
2014/02/25 职场文书
缅怀先烈演讲稿
2014/09/03 职场文书
"9.18"国耻日演讲稿范文
2014/09/14 职场文书
迎新生标语大全
2014/10/06 职场文书
幼儿教师继续教育培训心得体会
2016/01/19 职场文书
Nginx实现会话保持的两种方式
2022/03/18 Servers