js读取json文件片段中的数据

在html中利用js读取动态网站从服务器端返回的数据进行显示


1、js.html 页面  

需要引入 执行jquery的js文件

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
 <HEAD>
  <TITLE> New Document </TITLE>
  <META NAME="Generator" CONTENT="EditPlus">
  <META NAME="Author" CONTENT="">
  <META NAME="Keywords" CONTENT="">
  <META NAME="Description" CONTENT="">
  <script src="jquery-1.8.2.min.js"></script>

  <script>

  $(function(){
	//$("#loaddata").click(function(){
       $(document).ready(function(){
		//使用getJSON方法读取json数据,
		//注意:info.json可以是不同类型文件,只要其中的数据为json类型即可
		$.getJSON('info.json',function(data){

			var html = '';
			$.each(data,function(i,item){
			html += '<tr><td>'+item['name']+'</td>'+
			'<td>'+item['sex']+'</td>'+
			'<td>'+item.address+'</td>'+
			'<td>'+item['home']+'</td></tr>';
			});
			$('#title').after(html); 
			//after方法:在每个匹配的元素之后插入内容。
		});
	});
  });


//注:可以是item.address,也可以是item['address']
  //firefox报 json文件中 “语法错误 [”,单能加载数据
  //ie chrome 无法加载数据
  </script>
 </HEAD>
<input type="button" value="加载数据" id="loaddata" />

 <BODY>
  <table id="infotable" >
  <tr id="title"><th>姓名</th><th>性别</th><th>地址</th><th>主页</th></tr>
  </table>
 </BODY>
</HTML>

info.json文件

[
{
"name":"zhangsan",
"sex":"man",
"address":"hangzhou",
"home":"http://www.zhangsan.com"
},
{
"name":"lisi",
"sex":"wumen",
"address":"beijing",
"home":"http://www.lisi.coms"
}
]

网上下载 

jquery-1.8.2.min.js


应用场景 :

定期从数据库中读取的特定记录放到静态页面上去展示,为了减少对数据库访问的压力,把特定记录数取出来存放在json中,页面访问链接不用实时请求数据库。

至此可以将json中的内容加载到html静态也中去。



-------------QA

显示不了中文的确是编码问题,默认保存的json肯定是个记事本,然后改后缀名为json的,记事本默认编码是ANSI的 显示中文自然有问题,

解决方法:打开.json文件 文件 - 另存为 看到下面编码格式了吧 选择UTF-8 就可以了。

这里还有个容易出错的地方:
请求json文件报405错误,明明路径对的 但是还是报错。
解决方法:修改请求方式为get请求:







评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

prefectjava

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值