javascript動(dòng)態(tài)向網(wǎng)頁中添加表格實(shí)現(xiàn)代碼
更新時(shí)間:2014年02月19日 15:30:54 作者:
動(dòng)態(tài)向網(wǎng)頁中添加表格的方法有很多,本文為大家介紹下利用javascript是如何實(shí)現(xiàn)的
//此段代碼在IE9、Firefox、Chorme、safair中測試顯示沒有問題,給該表格添加了一些簡單的樣式,基本功能可以實(shí)現(xiàn),還有少量問題有待改進(jìn)!
效果圖如下:
以下是代碼:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>json數(shù)組轉(zhuǎn)成表格</title>
<meta http-equiv="content-type" content="text/html;charset=gb2312">
<style type="text/css">
caption {
padding: 0 0 5px 0;
width: 450px;
font: italic 11px "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
text-align: right;
}
td {
border:1px solid #c1dad7;
padding: 6px 6px 6px 12px;
color: #4f6b72;
text-align: center;
width:150px;
}
</style>
<script type="text/javascript">
var data=[{name:'xiaoxiao',age:12,gender:'male'},{name:'xiao',age:22,gender:'male'},{name:'hh',age:12,gender:'female'},{name:'ran',age:20,gender:'female'}];
//網(wǎng)頁加載完成后執(zhí)行該onload事件
onload = function(){
var body=document.getElementsByTagName('body')[0];
body.appendChild(createTable(data));
};
//根據(jù)傳入的json數(shù)組創(chuàng)建表格
var createTable = function(data){
//定義表格
var table=document.createElement('table');
table.setAttribute('style','width: 450px;');
//定義表格標(biāo)題
var caption=document.createElement('caption');
caption.innerHTML ='學(xué)生信息表';
//將標(biāo)題添加進(jìn)表格
table.appendChild(caption);
//調(diào)用createTr()方法生成標(biāo)題行并將其添加到table中。
table.appendChild(createTr('姓名','年齡','性別'));
table.childNodes[1].setAttribute('style','background:#cae8ea;');
//alert(table.firstChild);
//for循環(huán)json對(duì)象,然后將循環(huán)到的對(duì)象通過createTr()方法生成行,添加到table中
for(var i=0;i<data.length;i++){
table.appendChild(createTr(data[i].name,data[i].age,data[i].gender));
}
return table;
};
//根據(jù)用戶傳過來的變量生成表格中行的方法
var createTr = function(name,age,gender){
//定義行元素標(biāo)簽
var tr=document.createElement('tr');
//定義列元素標(biāo)簽
var tdName=document.createElement('td');
//設(shè)置該列節(jié)點(diǎn)的文本節(jié)點(diǎn)的值
tdName.innerHTML = name;
var tdAge = document.createElement('td');
tdAge.innerHTML = age;
var tdGender = document.createElement('td');
tdGender.appendChild(document.createTextNode(gender));//等價(jià)與 tdGender.innerHTML = gender;
//將列值添加到行元素節(jié)點(diǎn)
tr.appendChild(tdName);
tr.appendChild(tdAge);
tr.appendChild(tdGender);
//返回生成的行標(biāo)簽
return tr;
};
</script>
</head>
<body>
</body>
</html>
效果圖如下:
以下是代碼:
復(fù)制代碼 代碼如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>json數(shù)組轉(zhuǎn)成表格</title>
<meta http-equiv="content-type" content="text/html;charset=gb2312">
<style type="text/css">
caption {
padding: 0 0 5px 0;
width: 450px;
font: italic 11px "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
text-align: right;
}
td {
border:1px solid #c1dad7;
padding: 6px 6px 6px 12px;
color: #4f6b72;
text-align: center;
width:150px;
}
</style>
<script type="text/javascript">
var data=[{name:'xiaoxiao',age:12,gender:'male'},{name:'xiao',age:22,gender:'male'},{name:'hh',age:12,gender:'female'},{name:'ran',age:20,gender:'female'}];
//網(wǎng)頁加載完成后執(zhí)行該onload事件
onload = function(){
var body=document.getElementsByTagName('body')[0];
body.appendChild(createTable(data));
};
//根據(jù)傳入的json數(shù)組創(chuàng)建表格
var createTable = function(data){
//定義表格
var table=document.createElement('table');
table.setAttribute('style','width: 450px;');
//定義表格標(biāo)題
var caption=document.createElement('caption');
caption.innerHTML ='學(xué)生信息表';
//將標(biāo)題添加進(jìn)表格
table.appendChild(caption);
//調(diào)用createTr()方法生成標(biāo)題行并將其添加到table中。
table.appendChild(createTr('姓名','年齡','性別'));
table.childNodes[1].setAttribute('style','background:#cae8ea;');
//alert(table.firstChild);
//for循環(huán)json對(duì)象,然后將循環(huán)到的對(duì)象通過createTr()方法生成行,添加到table中
for(var i=0;i<data.length;i++){
table.appendChild(createTr(data[i].name,data[i].age,data[i].gender));
}
return table;
};
//根據(jù)用戶傳過來的變量生成表格中行的方法
var createTr = function(name,age,gender){
//定義行元素標(biāo)簽
var tr=document.createElement('tr');
//定義列元素標(biāo)簽
var tdName=document.createElement('td');
//設(shè)置該列節(jié)點(diǎn)的文本節(jié)點(diǎn)的值
tdName.innerHTML = name;
var tdAge = document.createElement('td');
tdAge.innerHTML = age;
var tdGender = document.createElement('td');
tdGender.appendChild(document.createTextNode(gender));//等價(jià)與 tdGender.innerHTML = gender;
//將列值添加到行元素節(jié)點(diǎn)
tr.appendChild(tdName);
tr.appendChild(tdAge);
tr.appendChild(tdGender);
//返回生成的行標(biāo)簽
return tr;
};
</script>
</head>
<body>
</body>
</html>
您可能感興趣的文章:
- js下為表格內(nèi)部動(dòng)態(tài)添加行的代碼
- javascript動(dòng)態(tài)添加表格數(shù)據(jù)行(ASP后臺(tái)數(shù)據(jù)庫保存例子)
- javascript 動(dòng)態(tài)添加表格行
- js生成動(dòng)態(tài)表格并為每個(gè)單元格添加單擊事件的方法
- 動(dòng)態(tài)添加刪除表格行的js實(shí)現(xiàn)代碼
- js在不刷新的情況下動(dòng)態(tài)添加表格行[腳本之家強(qiáng)烈推薦]
- javascript如何動(dòng)態(tài)加載表格與動(dòng)態(tài)添加表格行
- js動(dòng)態(tài)添加表格數(shù)據(jù)使用insertRow和insertCell實(shí)現(xiàn)
- 原生JS操作網(wǎng)頁給p元素添加onclick事件及表格隔行變色
- 簡單的js表格操作
相關(guān)文章
JavaScript document 對(duì)象常用方法
本文詳細(xì)介紹了JavaScript中的document對(duì)象,它是連接JavaScript與網(wǎng)頁內(nèi)容的橋梁,document對(duì)象提供了訪問和修改網(wǎng)頁結(jié)構(gòu)、內(nèi)容和樣式的接口,支持各種屬性和方法,適用于動(dòng)態(tài)更新內(nèi)容、表單驗(yàn)證和動(dòng)態(tài)樣式切換等場景,感興趣的朋友跟隨小編一起看看吧2025-02-02
html a標(biāo)簽-超鏈接中confirm方法使用介紹
confirm可以彈出確定取消對(duì)話框,然后根據(jù)用戶的選擇執(zhí)行相應(yīng)的操作,接下來介紹實(shí)現(xiàn)過程,需要了解的朋友可以參考下2013-01-01
js實(shí)現(xiàn)ASP分頁函數(shù) HTML分頁函數(shù)
js實(shí)現(xiàn)ASP分頁函數(shù) HTML分頁函數(shù)...2006-09-09
Axios請求超時(shí)設(shè)置無效的問題及解決方案
在現(xiàn)代前端開發(fā)中,Axios 是一個(gè)廣泛使用的 HTTP 客戶端庫,用于向服務(wù)器發(fā)送請求并處理響應(yīng),然而,有時(shí)開發(fā)者可能會(huì)發(fā)現(xiàn) Axios 的超時(shí)設(shè)置似乎無效,本文將深入探討 Axios 請求超時(shí)設(shè)置無效的常見原因,并提供詳細(xì)的解決方案和最佳實(shí)踐,需要的朋友可以參考下2024-12-12
JS實(shí)現(xiàn)的簡單鼠標(biāo)跟隨DiV層效果完整實(shí)例
這篇文章主要介紹了JS實(shí)現(xiàn)的簡單鼠標(biāo)跟隨DiV層效果,涉及JavaScript基于時(shí)間函數(shù)動(dòng)態(tài)操作頁面元素屬性的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-10-10

