以前一直没有弄过json这个东西,今天弄了一个jquery处理json实例,感觉挺简单,方便的发到这里来与大家一起分享。
功能:jquery处理json实现
作者:wangsdong
来源:
原创文章,转载请保留以上信息
假设服务器生成json字符串的文件是json.asp,生成的json字符串的内容是:{"weatherinfo":{"province":"江苏省份","city":"南京"}},
json.asp的代码如下:
<%
str="{""weatherinfo"":{""province"":""江苏省"",""city"":""南京""}}"
response.write str
%>(
鼠标移到代码上去,在代码的顶部会出现四个图标,第一个是查看源代码,第二个是复制代码,第三个是打印代码,第四个是帮助)
现在要把里面的省份和城市放到html页面的指定位置。所以这里就需要用到jquery的get、post或者是ajax提交到json.asp,来得到json字符串,具体代码如下:
第一种方法:
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$.get("json.asp?t="+Math.random(), function(data){
eval("jsonobj="+data);
$("#p1").html(jsonobj.weatherinfo.province);
$("#c1").html(jsonobj.weatherinfo.city);
});
});
</script>
<div>省份:<span></span><br />城市:<span></span></div>
(
鼠标移到代码上去,在代码的顶部会出现四个图标,第一个是查看源代码,第二个是复制代码,第三个是打印代码,第四个是帮助)
运行一下这个html页面,省份和城市后面是不是得到了json字符串中的省份和城市了,是不是很简单的。
或者还有一种写法:
第二种方法:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$.getJSON("json.asp?t="+Math.random(),
function(json,status)
{
$("#p1").html(json.weatherinfo.province);
$("#c1").html(json.weatherinfo.city);
});
});
</script>
<div>省份:<span></span><br />城市:<span></span></div>(
鼠标移到代码上去,在代码的顶部会出现四个图标,第一个是查看源代码,第二个是复制代码,第三个是打印代码,第四个是帮助)
这种比前面的那种写法,直接将json.asp中生成的json字符串,转成json去了,可以直接使用。
第二种方法对现在这个例子来说,优势比第一种好不了多少,但对大数据量的时候来说,就能看出来它的优势了。以下是它对数组操作的方法:
$.getJSON(
"json.asp",
{classNum:classNum},
function(json,status)
{
$.each(json,function(i){
$('#stuDiv').append("<div>学生学号:"+json[i].num+"</div>");
}
);
});
(
鼠标移到代码上去,在代码的顶部会出现四个图标,第一个是查看源代码,第二个是复制代码,第三个是打印代码,第四个是帮助)
这样是不是很方便
感谢wangsdong投稿
如果你对上面的教程不理解,点击此处,发短信请教wangsdong
更多关于jquery json 的教程