JavaScript 学习笔记(十三)Dom创建表格


Posted in Javascript onJanuary 21, 2010

Dom基础—创建表格
利用js来动态创建表格有两种格式,appendChild()和insertRow、insertCell()。但第一种有可能在IE上有问题,所以推荐使用第二种。
1、insertRow(index):index从0开始
这个函数将新行添加到index的那一行前,比如insertRow(0),是将新行添加到第一行之前。默认的insertRow()函数相当于 insertRow(-1),将新行添加到表的最后。一般我们在使用的时候都是:
objTable.insertRow (objTable.rows.length)就是为表格objTable在最后新增一行。
insertCell()和insertRow的用法相同。
2、deleteRow(index):index从0开始
删除指定位置的行,要传入的参数:Index是行在表格中的位置,可以下面的方法取得然后去删除:
var row = document.getElementById("行的Id");
var index = row.rowIndex; //有这个属性
objTable.deleteRow(index);
在使用过程中,删除表格的行的时候,如果删除了某一行,那么表格行数是马上就变化的,rows.length总是在变小,所以如果你要删除表格的所有行:

function removeAllRow() { 
var objTable = document.getElementById("myTable"); 
var length = objTable.rows.length; 
for (var i = 1; i < length; i++) { 
objTable.deleteRow(i); 
} 
}

3、setAttribute()方法,动态设置单元格与行的属性
格式如下:setAttribute(属性,属性值)
var objMyTable = document.getElementById("myTable");
objMyTable.setAttribute("border", 1); //为表格设置边框为1
在使用的时候遇到一个设置样式的问题,不能用
setAttribute("class","inputbox1");而应该使用
setAttribute("className","inputbox1"),
4、创建表格
了解了行<tr>与单元格<td>的增删那就可以创建表格了。
第一步:你需要有一个你去动态变化的表格,这里讲的是已经存在页面的表格,我们设置一个id:myTable

var objMyTable = document.getElementById("myTable");
第二步:创建行与列的对象

var index = objMyTable.rows.length; 
var nextRow = objMyTable.insertRow(index); //在最后的行 
//var nextRow = objMyTable.insertRow(0); //在最前的行

下面是示例代码
<script type="text/javascript"> 
var Count = false; //控制交替换行 
var NO = 1; //行号 
function addRow() { 
Count = !Count; 
//添加一行 
var newTr = table.insertRow(table.rows.length); //在最后新增一行 
//var newTr = table.insertRow(0); //在最前面新增一行 
//添加两列 
var newTd0 = newTr.insertCell(); 
var newTd1 = newTr.insertCell(); 
var newTd2 = newTr.insertCell(); 
//设置列内容和属性 
if (Count) { 
newTr.style.background = "#FFE1FF"; 
} 
else { 
newTr.style.background = "#FFEFD5"; 
} 
NO++; 
newTd0.innerHTML = '<input type=checkbox id="box' + NO + '" />'; 
newTd1.innerText = "第" + NO + "行"; 
newTd2.innerHTML = '<input type="text" id="Text' + NO + '" />'; 
} 
</script> 
<body> 
<form id="form1" runat="server"> 
<input type="button" value="插入行" onclick="addRow()" /> 
<table width="399" border="0" cellspacing="1" id="table" style="font-size: 14px;"> 
<tr bgcolor="#FFEFD5"> 
<td width="6%"> 
<input type="checkbox" id="box1" /> 
</td> 
<td> 
第1行 
</td> 
<td> 
<input id="Text1" type="text" /> 
</td> 
</tr> 
</table> 
</form> 
</body>
Javascript 相关文章推荐
javascript循环变量注册dom事件 之强大的闭包
Sep 08 Javascript
JS 实现获取打开一个界面中输入的值
Mar 19 Javascript
Jquery原生态实现表格header头随滚动条滚动而滚动
Mar 18 Javascript
js实现两点之间画线的方法
May 12 Javascript
JavaScript禁止用户多次提交的两种方法
Jul 24 Javascript
node.js中debug模块的简单介绍与使用
Apr 25 Javascript
es7学习教程之Decorators(修饰器)详解
Jul 21 Javascript
vue 实现类似淘宝星级评分的示例
Mar 01 Javascript
JS获取子节点、父节点和兄弟节点的方法实例总结
Jul 06 Javascript
Vue2实时监听表单变化的示例讲解
Aug 30 Javascript
vue中使用heatmapjs的示例代码(结合百度地图)
Sep 05 Javascript
element跨分页操作选择详解
Jun 29 Javascript
JavaScript 学习笔记(十二) dom
Jan 21 #Javascript
javascript parseInt与Number函数的区别
Jan 21 #Javascript
js parsefloat parseint 转换函数
Jan 21 #Javascript
jquery 防止表单重复提交代码
Jan 21 #Javascript
javascript 哈希表(hashtable)的简单实现
Jan 20 #Javascript
JS 对象介绍
Jan 20 #Javascript
JavaScript 学习笔记(十一)
Jan 19 #Javascript
You might like
单位速度在实战中的运用
2020/03/04 星际争霸
windows下apache搭建php开发环境
2015/08/27 PHP
PHP后台微信支付和支付宝支付开发
2017/04/28 PHP
PHP扩展类型及安装方式解析
2020/04/27 PHP
ASP.NET jQuery 实例6 (实现CheckBoxList成员全选或全取消)
2012/01/13 Javascript
屏蔽script注入小例子
2013/11/12 Javascript
Javascript selection的兼容性写法介绍
2013/12/20 Javascript
seajs中模块的解析规则详解和模块使用总结
2014/03/12 Javascript
jQuery实现checkbox全选的方法
2015/06/10 Javascript
jQuery实现滚动切换的tab选项卡效果代码
2015/08/26 Javascript
js中flexible.js实现淘宝弹性布局方案
2020/06/23 Javascript
Ionic如何实现下拉刷新与上拉加载功能
2016/06/03 Javascript
微信小程序进行微信支付的步骤昂述
2016/12/01 Javascript
基于JavaScript实现熔岩灯效果导航菜单
2017/01/04 Javascript
three.js绘制地球、飞机与轨迹的效果示例
2017/02/28 Javascript
基于JavaScript实现百度搜索框效果
2020/06/28 Javascript
javaScript中&quot;==&quot;和&quot;===&quot;的区别详解
2018/03/16 Javascript
微信小程序列表中item左滑删除功能
2018/11/07 Javascript
PM2自动部署代码步骤流程总结
2018/12/10 Javascript
使用原生js编写一个简单的框选功能方法
2019/05/13 Javascript
vue中更改数组中属性,在页面中不生效的解决方法
2019/10/30 Javascript
vue跳转页面的几种方法(推荐)
2020/03/26 Javascript
[47:52]DOTA2-DPC中国联赛正赛 iG vs LBZS BO3 第二场 3月4日
2021/03/11 DOTA
Python探索之创建二叉树
2017/10/25 Python
Python使用PIL模块生成随机验证码
2017/11/21 Python
python读取txt文件并取其某一列数据的示例
2019/02/19 Python
python3在同一行内输入n个数并用列表保存的例子
2019/07/20 Python
django重新生成数据库中的某张表方法
2019/08/28 Python
Python面向对象特殊属性及方法解析
2020/09/16 Python
HTML高亮关键字的实现代码
2018/10/22 HTML / CSS
大都会艺术博物馆商店:The Met Store
2018/06/22 全球购物
电子信息毕业生自荐信
2013/11/16 职场文书
人力资源主管职责范本
2014/03/05 职场文书
事业单位绩效考核实施方案
2014/03/27 职场文书
教师个人读书活动总结
2014/07/08 职场文书
值班管理制度范本
2015/08/06 职场文书