JavaScript Object Notation(json)

本文介绍了一种使用JSON数据格式动态创建HTML表格的方法。通过解析JSON数据并利用JavaScript将其转换成DOM元素,实现了一个包含姓名、薪资和年龄的员工信息表格。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

json---一种轻量级的数据交换格式,采用完全独立于语言的文本格式,这样使得JSON成为最理想的数据交换语言,易于机器的解析和生成(一般用于提升网络的传输速率)

创建表格

<span style="font-size:18px;"><!DOCTYPE HTML>
<html>
<head>
<title>动态创建表格</title>
<meta charset="utf-8" />
<style>
	table{width:600px; border-collapse:collapse;
		text-align:center;
	}
	td,th{border:1px solid #ccc}
</style>
<script>
    //声明一个json变量存储字符串
 var json='[{"ename":"Tom","salary":3500,"age":25},{"ename":"Eric","salary":4000,"age":26},{"ename":"Mary","salary":5000,"age":24}]';
	
  var emps=eval(json);//将json字符串用eval方法翻译为内存中的对象
	function initEmps(){
		var table=document.createElement("table");//创建空table对象
               var thead=document.createElement("thead");//创建空thead对象
			table.appendChild(thead);//将thead对象追加到table对象中
		var tr=document.createElement("tr");//创建空tr对象
			thead.appendChild(tr);//将tr对象追加到thead对象中
		for(var key in emps[0]){//遍历emps中第一个对象的所有属性
			var th=document.createElement("th");//创建空th对象
			th.innerHTML=key;//设置th的内容为key
			tr.appendChild(th);//将th对象追加到tr对象中
		}
		var tbody=document.createElement("tbody");//创建空tbody对象
			table.appendChild(tbody);//将tbody对象追加到table对象中
		for(var i=0;i<emps.length;i++){//遍历emps中的每个对象
			var tr=document.createElement("tr");//创建空tr对象
				tbody.appendChild(tr);//将tr对象追加到tbody对象中
			for(var key in emps[i]){//遍历当前员工的每个属性
				var td=document.createElement("td");//创建空td对象
					tr.appendChild(td);//将td对象追加到tr对象中
					td.innerHTML=emps[i][key];设置td的内容为当前属性的值
			}
		}
			document.getElementById("data").appendChild(table);//将table追到id为data的div下,
                                                                         //该语句放在此处是为了避免反复layout
	}
	window.onload=function(){
		initEmps();
	}
</script>
</head>
<body>
	<div id="data"></div>
</body>
</html></span>


如果代码在运行过程中有任何错误,还请谅解!


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值