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操纵Cookie实现购物车程序
Feb 15 Javascript
javascript Split方法,indexOf方法、lastIndexOf 方法和substring 方法
Mar 21 Javascript
javascript 面向对象编程基础:封装
Aug 21 Javascript
js隐藏与显示回到顶部按钮及window.onscroll事件应用
Jan 25 Javascript
javascript获取浏览器类型和版本的方法(js获取浏览器版本)
Mar 13 Javascript
基于javascript实现简单计算器功能
Jan 03 Javascript
Bootstrap 模态框实例插件案例分析
Dec 28 Javascript
jQuery实现在新增加的元素上添加事件方法案例分析
Feb 09 Javascript
javascript编程开发中取色器及封装$函数用法示例
Aug 09 Javascript
Vue刷新修改页面中数据的方法
Sep 16 Javascript
从Vuex中取出数组赋值给新的数组,新数组push时报错的解决方法
Sep 18 Javascript
Vue指令指令大全
Feb 09 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
php利用新浪接口查询ip获取地理位置示例
2014/01/20 PHP
PHP中绘制图像的一些函数总结
2014/11/19 PHP
为百度UE编辑器上传图片添加水印功能
2015/04/16 PHP
深入解析PHP中foreach语句控制数组循环的用法
2015/11/30 PHP
php实现中文转数字
2016/02/18 PHP
彻底搞懂JS无缝滚动代码
2007/01/03 Javascript
js+CSS 图片等比缩小并垂直居中实现代码
2008/12/01 Javascript
js优化针对IE6.0起作用(详细整理)
2012/12/25 Javascript
JS+CSS实现一个气泡提示框
2013/08/18 Javascript
javascript制作的简单注册模块表单验证
2015/04/13 Javascript
jQuery实现鼠标经过图片变亮其他变暗效果
2015/05/08 Javascript
再次谈论React.js实现原生js拖拽效果引起的一系列问题
2016/04/03 Javascript
浅谈JavaScript 标准对象
2016/06/02 Javascript
jquery层级选择器(匹配父元素下的子元素实现代码)
2016/09/05 Javascript
基于JQuery实现的跑马灯效果(文字无缝向上翻动)
2016/12/02 Javascript
JS验证不重复验证码
2017/02/10 Javascript
js实现显示手机号码效果
2017/03/09 Javascript
js实现旋转木马效果
2017/03/17 Javascript
VUE2.0+Element-UI+Echarts封装的组件实例
2018/03/02 Javascript
js blob类型url的视频下载问题的解决
2019/11/29 Javascript
Python中一些不为人知的基础技巧总结
2018/05/19 Python
pandas DataFrame索引行列的实现
2019/06/04 Python
python批量修改ssh密码的实现
2019/08/08 Python
python如何通过pyqt5实现进度条
2020/01/20 Python
PyCharm GUI界面开发和exe文件生成的实现
2020/03/04 Python
Selenium基于PIL实现拼接滚动截图
2020/04/10 Python
Python 多进程原理及实现
2020/12/21 Python
CSS实现聊天气泡效果
2020/04/26 HTML / CSS
建筑结构施工专业推荐信
2014/02/21 职场文书
社区母亲节活动方案
2014/03/05 职场文书
毕业生自荐信如何写
2014/03/24 职场文书
《鸿门宴》教学反思
2014/04/22 职场文书
小平小道观后感
2015/06/09 职场文书
Python基础之元类详解
2021/04/29 Python
python实现对doc、txt、xls等文档的读写操作
2022/04/02 Python
vue-cli3.x配置全局的scss的时候报错问题及解决
2022/04/30 Vue.js