需求说明:

/*
*需求说明:
*获取元素:tBodies,tHead,tFoot,rows,cells
*表格的创建
*数据添加
*隔行变色
*删除操作,剩余表格重新计算,实现隔行变色
*/

HTML:

<table id="table1">
<tbody>
<tr>
<th>编号</th>
<th>姓名</th>
<th>性别</th>
<th>操作</th>
</tr> </tbody>
</table>

CSS:

    table{
border:1px solid #eee;
border-collapse: collapse;
} td,th{
border: 1px solid #eee;
padding: 12px 18px;
} a{
text-decoration: none;
padding: 4px 10px;
color: #f8f8f8;
font-size: 12px;
border-radius: 3px;
letter-spacing: 2px;
text-shadow: 0 0 1px rgba(0,0,0,.15);
background-color: #eb4f38;
}

JAVASCRIPT:

/*
*需求说明:
*获取元素:tBodies,tHead,tFoot,rows,cells
*表格的创建
*数据添加
*隔行变色
*删除操作,剩余表格重新计算,实现隔行变色
*/ /*
=========================
*tHead:表格头
*tBodies:表格正文
*tFoot:表格尾
*rows:行
* cells:列
=========================
*/ var oTable=document.getElementById('table1');
var oTbody=oTable.tBodies[0];
var data=[ {'id':1,'name':'kevin1','sex':'男'},
{'id':2,'name':'kevin2','sex':'男'},
{'id':3,'name':'kevin3','sex':'男'},
{'id':4,'name':'kevin4','sex':'男'},
{'id':5,'name':'kevin5','sex':'男'},
{'id':6,'name':'kevin6','sex':'男'}, ]; for(var i=0;i<data.length;i++){ var oTr=document.createElement('tr'); /*添加id*/
var oTd=document.createElement('td');
oTd.innerHTML=data[i].id;
oTr.appendChild(oTd); /*隔行换色*/ if (i%2===0) {
oTr.style.backgroundColor='#fff';
}else{
oTr.style.backgroundColor='#f8f8f8';
} /*添加name*/
oTd=document.createElement('td');
oTd.innerHTML=data[i].name;
oTr.appendChild(oTd); /*添加sex*/
oTd=document.createElement('td');
oTd.innerHTML=data[i].sex;
oTr.appendChild(oTd); /*添加操作*/
oTd=document.createElement('td');
/*oTd.innerHTML='删除';*/
oTr.appendChild(oTd); /*删除*/ var oA=document.createElement('a');
oA.innerHTML='删除';
oA.href='javascript:';
oA.onclick=function(){ //删除当前【行】
oTbody.removeChild(this.parentNode.parentNode); //删除操作完成之后,剩余表格重新计算,实现隔行变色
for(var i=0;i<oTbody.rows.length;i++){ if (i%2===0) {
oTbody.rows[i].style.backgroundColor='#fff';
}else{
oTbody.rows[i].style.backgroundColor='#f8f8f8';
} } } oTd.appendChild(oA);
oTbody.appendChild(oTr); }

  

在线演示:

http://codepen.io/anon/pen/BNJdBY

Javascript:DOM表格操作的更多相关文章

  1. JavaScript DOM 基础操作

    JavaScript DOM 基础操作 一.获取元素的六方式 document.getElementById('id名称') //根据id名称获取 document.getElementsByclas ...

  2. DOM表格操作

    注意:就算代码中不包含<tbody>标签,浏览器解析时也可能会自动添加,因此需要注意子元素的选择 表格操作用到的属性: 1.tHead 2.tBodies 3.tFoot 更为细致的有: ...

  3. javaScript之表格操作<一:新增行>

    DOM表格系列操作 /** * 添加表格行 * @function 本接口可以用于:在表格tbody部分新增任意数量,任意样式的行HTML结构; * @name addTableLines * @au ...

  4. JavaScript DOM 常用操作

    1.理解DOM: DOM(Document Object Model ,文档对象模型)一种独立于语言,用于操作xml,html文档的应用编程接口. 怎么说,我从两个角度理解: 对于JavaScript ...

  5. JavaScript DOM–节点操作

    节点 节点至少拥有nodeType(节点类型).nodeName(节点名称)和nodeValue(节点值)这三个基本属性. 元素节点 nodeType  为1 属性节点 nodeType  为2 文本 ...

  6. JavaScript DOM节点操作总结

    节点类型 节点类型主要有三种:元素节点,属性节点和文本节点. 而对DOM的主要也就是围绕元素节点和属性节点的增删改查.下面就分别从对元素节点的操作和对属性节点的操作来介绍. 元素节点 查 在对DOM进 ...

  7. javascript DOM基础操作

    DOM(Document Object Model)即文档对象模型,针对HTML和XML文档的API(应用程序接口).DOM描绘了一个层次化的节点树,运行开发人员添加.移除和修改页面的某一部分.DOM ...

  8. JavaScript DOM–元素操作

    获取元素 根据 ID 获取元素 语法: document.getElementById(id) <div id='time'>2020-01-09</div> <scri ...

  9. dom 表格操作

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

随机推荐

  1. Apache调优

    1.调整文件描述符大小,默认Linux系统的文件描述符是1024,对于squid等一些服务来说                在高负载的情况下这些文件描述符是远远不够的,所以在部署该类服务器时修改文件 ...

  2. SOA

    面向服务架构Service-Oriented Architecture 4个特性 1每个服务具有明确的边界 2服务是独立的 3采用标准的契约定义和通信协议 4服务是自解释的

  3. 数据转换错误,java.lang.NumberFormatException: null

    今天写项目时报了一个数组转换错误的异常,让我找了半天5555 -_- . 一般出现这种错误呢,情况都是parseInt转换所触发的,像下面这行代码 int factorOneInt = Integer ...

  4. MySQL 慢查询配置

    MYSQL慢查询 1. 慢查询有什么用? 它能记录下所有执行超过long_query_time时间的SQL语句, 帮你找到执行慢的SQL, 方便我们对这些SQL进行优化. 2. 如何开启慢查询? 首先 ...

  5. Mysql 锁粒度

    表锁: 表锁是mysql 中最几本的锁策略,并且是开销最小的策略:它会锁定整张表. 一个用户在对表进行锁操作(增,删,改)前,首先要获得写锁,这会阻塞其他用户对该表的所有读写操作.只有没有写锁时,其他 ...

  6. jQuery get/post区别及contentType取值

    1.GET访问 浏览器 认为 是等幂的 就是 一个相同的URL 只有一个结果[相同是指 整个URL字符串完全匹配]所以 第二次访问的时候 如果 URL字符串没变化浏览器是直接拿出了第一次访问的结果,表 ...

  7. haslayout和BFC

    感谢CSS涛的分享,参考文章: (1)haslayout:http://aibusy.com/blog/?p=53 (2)BFC 神奇背后的原理:http://aibusy.com/blog/?p=8 ...

  8. 信息安全实验四:information-security

    title: authentication date: 2016-01-13 14:33:22 categories: information-security tags: authenticatio ...

  9. MyBatis错误--Invalid bound statement (not found)

    今天在开发项目的时候使用MyBatis发生错误:Invalid bound statement (not found) 具体错误信息: org.springframework.beans.factor ...

  10. Android中支持的常用距离单位

    px(像素):每个px对应屏幕上的一个点.dip或dp(device independent pixels,设备独立像素):一种基于屏幕密度的抽象单位.在每英寸160点的显示器上,1dip=1px.但 ...