视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
dom操作表格示例(dom创建表格)
2020-11-27 14:44:40 责编:小采
文档


一、使用HTML标签创建表格:


代码如下:
<tableborder="1"width="300">
<caption>人员表</caption>
<thead>
<tr>
<th>姓名</th>
<th>性别</th>
<th>年龄</th>
</tr>
</thead>
<tbody>
<tr>
<td>张三</td>
<td>男</td>
<td>20</td>
</tr>
<tr>
<td>李四</td>
<td>女</td>
<td>22</td>
</tr>
</tbody>
<tfoot>
<tr>
<tdcolspan="3">合计:N</td>
</tr>
</tfoot>
</table>

thead、tfoot、caption标签在一个表格中只能有一个tbody、tr、td、th标签在一个表格中可以有N个

二、使用DOM创建表格

<table>标签是HTML中结构最为复杂的一个,我们可以通过DOM来创建生成它,或者HTMLDOM来操作它。(HTMLDOM提供了更加方便快捷的方式来操作HTML)


代码如下:
<script>
window.onload=function(){
vartable=document.createElement("table");
//给表格添加属性
table.width=300;//还可以使用这种方法:table.setAttribute('width',300)
table.border=1;</p> <p>//创建表格的标题
varcaption=document.createElement("caption");
table.appendChild(caption);</p> <p>//给表格的标题添加内容
//caption.innerHTML="人员表";//非W3c标准的方法
varcaptionText=document.createTextNode("人员表");
caption.appendChild(captionText);</p> <p>
//创建表格的第一行,是个标题行
varthead=document.createElement("thead");
table.appendChild(thead);</p> <p>vartr=document.createElement("tr");
thead.appendChild(tr);</p> <p>//列
varth1=document.createElement("th");
tr.appendChild(th1);
th1.innerHTML="数据";
varth2=document.createElement("th");
tr.appendChild(th2);
th2.innerHTML="数据";</p> <p>document.body.appendChild(table);
};
</script>

三、使用DOM获取表格数据(使用DOM操作表格会很烦)

代码如下:
window.onload=function(){
vartable=document.getElementsByTagName("table")[0];
alert(table.children[0].innerHTML);
};

四、使用HTMLDOM来获取表格数据(方便,简单,清晰)。

因为表格较为繁杂,层次也多,在使用之前所学习的DOM只是来获取某个元素会非常难受,所以使用HTMLDOM会清晰很多。


代码如下:
window.onload=function(){
//使用HTMLDOM来获取表格元素
vartable=document.getElementsByTagName('table')[0];//获取table引用
//按HTMLDOM来获取表格的<caption>
alert(table.caption.innerHTML);//获取caption的内容
//table.caption.innerHTML="学生表";//还可以设置值
};


代码如下:
window.onload=function(){
//使用HTMLDOM来获取表格元素
vartable=document.getElementsByTagName('table')[0];//获取table引用
//按HTMLDOM来获取表头表尾<thead>、<tfoot>
alert(table.tHead);//获取表头
alert(table.tFoot);//获取表尾</p> <p>//按HTMLDOM来获取表体<tbody>
alert(table.tBodies);//获取表体的集合
};

在一个表格中<thead>和<tfoot>是唯一的,只能有一个。而<tbody>不是唯一的可以有多个,这样导致最后返回的<thead>和<tfoot>是元素引用,而<tbody>返回的是元素集合。


代码如下:
window.onload=function(){
//使用HTMLDOM来获取表格元素
vartable=document.getElementsByTagName('table')[0];//获取table引用
//按HTMLDOM来获取表格的行数
alert(table.rows.length);//获取行数的集合,数量</p> <p>//按HTMLDOM来获取表格主体里的行数
alert(table.tBodies[0].rows.length);//获取主体的行数的集合,数量
};


代码如下:
window.onload=function(){
//使用HTMLDOM来获取表格元素
vartable=document.getElementsByTagName('table')[0];//获取table引用</p> <p>//按HTMLDOM来获取表格主体内第一行的单元格数量(tr)
alert(table.tBodies[0].rows[0].cells.length);//获取第一行单元格的数量
};


代码如下:
window.onload=function(){
//使用HTMLDOM来获取表格元素
vartable=document.getElementsByTagName('table')[0];//获取table引用</p> <p>//按HTMLDOM来获取表格主体内第一行第一个单元格的内容(td)
alert(table.tBodies[0].rows[0].cells[0].innerHTML);//获取第一行第一个单元格的内容
};


代码如下:
<script>
window.onload=function(){
//使用HTMLDOM来获取表格元素
vartable=document.getElementsByTagName('table')[0];//获取table引用</p> <p>//按HTMLDOM来删除标题、表头、表尾、行、单元格
//table.deleteCaption();//删除标题
//table.deleteTHead();//删除<thead>
//table.tBodies[0].deleteRow(0);//删除<tr>一行
//table.tBodies[0].rows[0].deleteCell(0);//删除<td>一个单元格
//table.tBodies[0].rows[0].deleteCell(1);//删除一个单元格中的内容,相当于删除掉一个单元格,后面的但愿会补进
};
</script>

五、HTMLDOM创建表格


代码如下:
window.onload=function(){
//按HTMLDOM创建一个表格
vartable=document.createElement('table');
table.border=1;
table.width=300;</p> <p>table.createCaption().innerHTML='人员表';</p> <p>//table.createTHead();
//table.tHead.insertRow(0);
varthead=table.createTHead();//该方法返回一个引用
vartr=thead.insertRow(0);//该方法返回一个引用</p> <p>vartd=tr.insertCell(0);
//td.appendChild(document.createTextNode('数据'));//添加数据的一种方式,还可以使用下面种方式
td.innerHTML="数据";
vartd2=tr.insertCell(1);
//td2.appendChild(document.createTextNode('数据2'));
td2.innerHTML="数据2";</p> <p>document.body.appendChild(table);
};在创建表格的时候<table>、<tbody>、<th>没有特定的方法,需要使用document来创建。也可以模拟已有的方法编写特定的函数即可,例如:insertTH()之类的。

下载本文
显示全文
专题