javascript动态向网页中添加表格实现代码

 更新时间:2014年02月19日 15:30:54   作者:  
动态向网页中添加表格的方法有很多,本文为大家介绍下利用javascript是如何实现的
//此段代码在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>

相关文章

  • 微信小程序实现留言板功能

    微信小程序实现留言板功能

    这篇文章主要为大家详细介绍了微信小程序实现留言板功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-11-11
  • 不使用 JS 匿名函数理由

    不使用 JS 匿名函数理由

    本文给大家分析了不使用js匿名函数的三大理由,匿名函数的作用是避免全局变量的污染以及函数名的冲突,关于js匿名函数的三大理由大家参考下本文
    2017-11-11
  • JavaScript document 对象常用方法

    JavaScript document 对象常用方法

    本文详细介绍了JavaScript中的document对象,它是连接JavaScript与网页内容的桥梁,document对象提供了访问和修改网页结构、内容和样式的接口,支持各种属性和方法,适用于动态更新内容、表单验证和动态样式切换等场景,感兴趣的朋友跟随小编一起看看吧
    2025-02-02
  • JavaScript自定义日历效果

    JavaScript自定义日历效果

    这篇文章主要为大家详细介绍了JavaScript自定义日历效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-11-11
  • html a标签-超链接中confirm方法使用介绍

    html a标签-超链接中confirm方法使用介绍

    confirm可以弹出确定取消对话框,然后根据用户的选择执行相应的操作,接下来介绍实现过程,需要了解的朋友可以参考下
    2013-01-01
  • canvas仿iwatch时钟效果

    canvas仿iwatch时钟效果

    本文主要介绍了canvas仿iwatch时钟效果的实例,具有很好的参考价值。下面跟着小编一起来看下吧
    2017-03-03
  • js实现ASP分页函数 HTML分页函数

    js实现ASP分页函数 HTML分页函数

    js实现ASP分页函数 HTML分页函数...
    2006-09-09
  • Axios请求超时设置无效的问题及解决方案

    Axios请求超时设置无效的问题及解决方案

    在现代前端开发中,Axios 是一个广泛使用的 HTTP 客户端库,用于向服务器发送请求并处理响应,然而,有时开发者可能会发现 Axios 的超时设置似乎无效,本文将深入探讨 Axios 请求超时设置无效的常见原因,并提供详细的解决方案和最佳实践,需要的朋友可以参考下
    2024-12-12
  • JS 面向对象之神奇的prototype

    JS 面向对象之神奇的prototype

    对于初学 JavaScript 的人来说 prototype 是一种很神奇的特性,而事实上,prototype 对于 JavaScript 的意义重大,prototype 不仅仅是一种管理对象继承的机制,更是一种出色的设计思想。
    2011-02-02
  • JS实现的简单鼠标跟随DiV层效果完整实例

    JS实现的简单鼠标跟随DiV层效果完整实例

    这篇文章主要介绍了JS实现的简单鼠标跟随DiV层效果,涉及JavaScript基于时间函数动态操作页面元素属性的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-10-10

最新评论