Posted in Javascript onFebruary 19, 2014
//此段代码在IE9、Firefox、Chorme、safair中测试显示没有问题,给该表格添加了一些简单的样式,基本功能可以实现,还有少量问题有待改进!
效果图如下:
以下是代码:
<!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数组转成表格</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'}]; //网页加载完成后执行该onload事件 onload = function(){ var body=document.getElementsByTagName('body')[0]; body.appendChild(createTable(data)); }; //根据传入的json数组创建表格 var createTable = function(data){ //定义表格 var table=document.createElement('table'); table.setAttribute('style','width: 450px;'); //定义表格标题 var caption=document.createElement('caption'); caption.innerHTML ='学生信息表'; //将标题添加进表格 table.appendChild(caption); //调用createTr()方法生成标题行并将其添加到table中。 table.appendChild(createTr('姓名','年龄','性别')); table.childNodes[1].setAttribute('style','background:#cae8ea;'); //alert(table.firstChild); //for循环json对象,然后将循环到的对象通过createTr()方法生成行,添加到table中 for(var i=0;i<data.length;i++){ table.appendChild(createTr(data[i].name,data[i].age,data[i].gender)); } return table; }; //根据用户传过来的变量生成表格中行的方法 var createTr = function(name,age,gender){ //定义行元素标签 var tr=document.createElement('tr'); //定义列元素标签 var tdName=document.createElement('td'); //设置该列节点的文本节点的值 tdName.innerHTML = name; var tdAge = document.createElement('td'); tdAge.innerHTML = age; var tdGender = document.createElement('td'); tdGender.appendChild(document.createTextNode(gender));//等价与 tdGender.innerHTML = gender; //将列值添加到行元素节点 tr.appendChild(tdName); tr.appendChild(tdAge); tr.appendChild(tdGender); //返回生成的行标签 return tr; }; </script> </head> <body> </body> </html>
javascript动态向网页中添加表格实现代码
声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@