Ajax开发之JSON应用http://onewww.net/blog/article.asp?id=47
2007-07-27 19:09
441 查看
很多资料上都说JSON在更多的场合都比XML更适合Ajax的数据传送,但google很久没有找到JSON的如何像XML那样的遍历
其实JSON是一种JS定义对象的一种特殊的形势,所以可以按照对象的方法来访问,但又有一些不同.JSON太神奇了,呵呵,做了个小例子,不知道如何读取JSON中的值的朋友看一下吧
HTML代码
<script language="JavaScript" type="text/javascript">
var d = {"msg":[{"user":"llinzzi","msg":"你好"},{"user":"Huanhuan","msg":"嘿嘿"}],"type":"test"};
alert(d.type);
alert(d.msg[0].msg);
alert(d.msg.length);
for (var o in d){
alert(d[o]);
}
</script>
[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]
此外,如果服务器返回得responseText内容是{"msg":[{"user":"llinzzi","msg":"你好"},{"user":"Huanhuan","msg":"嘿嘿"}],"type":"test"}格式的,在ajax要进行赋值的时候必须是
var msg=eval('(' + req.responseText + ')');
我没能理解为什么外面要加(),我如果直接把responseText改为({...})却得不到想要得结果,知道得朋友告诉我
其实JSON是一种JS定义对象的一种特殊的形势,所以可以按照对象的方法来访问,但又有一些不同.JSON太神奇了,呵呵,做了个小例子,不知道如何读取JSON中的值的朋友看一下吧
HTML代码
<script language="JavaScript" type="text/javascript">
var d = {"msg":[{"user":"llinzzi","msg":"你好"},{"user":"Huanhuan","msg":"嘿嘿"}],"type":"test"};
alert(d.type);
alert(d.msg[0].msg);
alert(d.msg.length);
for (var o in d){
alert(d[o]);
}
</script>
[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]
此外,如果服务器返回得responseText内容是{"msg":[{"user":"llinzzi","msg":"你好"},{"user":"Huanhuan","msg":"嘿嘿"}],"type":"test"}格式的,在ajax要进行赋值的时候必须是
var msg=eval('(' + req.responseText + ')');
我没能理解为什么外面要加(),我如果直接把responseText改为({...})却得不到想要得结果,知道得朋友告诉我
相关文章推荐
- ASP.NET 2.0 URL映射技巧http://onewww.net/blog/article.asp?id=83
- asp.net控件开发基础 来源:http://www.clingingboy.com/blog/article.asp?id=258
- 在线制作漂亮按钮工具http://www.pizipi.cn/blog/article.asp?id=855
- [Remoting] 九:动态发布(收藏转帖http://www.rainsts.net/article.asp?id=416)
- 让IIS6.0全面支持asp+php+jsp最新完整版 http://www.marktip.com/blog/article.asp?id=151
- 闭合浮动元素超级简单的方法http://www.jluvip.com/blog/article.asp?id=281
- [Remoting] 十:追踪服务(收藏转帖http://www.rainsts.net/article.asp?id=417)
- winsock学习笔记(二)(http://www.vccode.net/article_view.asp?id=738)
- FLex Builder环境 使用 说明 BLOG http://www.akooc.com/article.asp?id=141
- 整合动网用户登陆 http://www.hotrich.com/blog/article.asp?id=20
- [Remoting] 四:生存期租约(收藏转帖http://www.rainsts.net/article.asp?id=411)
- Message Queuing(收藏转帖http://www.rainsts.net/article.asp?id=418)
- FCKeditor 2.3 在ASP.NET中的设置和使用http://blog.licns.com/blog/article.asp?id=173
- NET Remoting一,二(收藏转帖http://www.rainsts.net/article.asp?id=408)
- 百度二级域名大全 目前为234个http://www.twocity.cn/blog/article.asp?id=818
- [Remoting] 十一:事件(收藏转帖http://www.rainsts.net/article.asp?id=419)
- COM interop理论/实践(http://www.manbu.net/article.asp?id=53)
- VS .NET 2005中水晶报表的使用 http://www.tianyablog.com/blogger/post_show.asp?BlogID=116800&PostID=9731765
- [ASP.NET 优化] IIS6 Gziphttp://www.rainsts.net/article.asp?id=531
- 将cooledit作为一个音频信号发生器(http://www.zsjys.net/JYJY/ShowArticle.asp?ArticleID=64)