用jquery解析JSON数据的方法,作为jquery异步请求的传输对象,jquery请求后返回的结果是json对象,这里考虑的都是服务器返回JSON形式的字符串的形式,对于利用JSONObject等插件封装的JSON对象,与此亦是大同小异,这里不再做说明。
这里首先给出JSON字符串集,字符串集如下:
代码如下:
var data="
{
root:
[
{name:'1',value:'0'},
{name:'6101',value:'北京市'},
{name:'6102',value:'天津市'},
{name:'6103',value:'上海市'},
{name:'6104',value:'重庆市'},
{name:'6105',value:'渭南市'},
{name:'6106',value:'延安市'},
{name:'6107',value:'汉中市'},
{name:'6108',value:'榆林市'},
{name:'6109',value:'安康市'},
{name:'6110',value:'商洛市'}
]
}";
这里以jquery异步获取的数据类型——json对象和字符串为依据,分别介绍两种方式获取到的结果处理方式。
1.对于服务器返回的JSON字符串,如果jquery异步请求没做类型说明,或者以字符串方式接受,那么需要做一次对象化处理,方式不是太麻烦,就是将该字符串放于eval()中执行一次。这种方式也适合以普通javascipt方式获取json对象,以下举例说明:
var dataObj=eval("("+data+")");//转换为json对象
alert(dataObj.root.length);//输出root的子对象数量
$.each(dataObj.root,fucntion(idx,item){
if(idx==0){
return true;
}
//输出每个root子对象的名称和值
alert("name:"+item.name+",value:"+item.value);
})
注:对于一般的js生成json对象,只需要将$.each()方法替换为for语句即可,其他不变。
2.对于服务器返回的JSON字符串,如果jquery异步请求将type(一般为这个配置属性)设为“json”,或者利用$.getJSON()方法获得服务器返回,那么就不需要eval()方法了,因为这时候得到的结果已经是json对象了,只需直接调用该对象即可,这里以$.getJSON方法为例说明数据处理方法:
$.getJSON("http://www.phpzixue.cn/",{param:"gaoyusi"},function(data){
//此处返回的data已经是json对象
//以下其他操作同第一种情况
$.each(data.root,function(idx,item){
if(idx==0){
return true;//同countinue,返回false同break
}
alert("name:"+item.name+",value:"+item.value);
});
});
这里特别需要注意的是方式1中的eval()方法是动态执行其中字符串(可能是js脚本)的,这样很容易会造成系统的安全问题。所以可以采用一些规避了eval()的第三方客户端脚本库,比如JSON in JavaScript就提供了一个不超过3k的脚本库。
本文来自: IT知道网(http://www.itwis.com) 详细出处参考:http://www.itwis.com/html/programme/javascript/20090905/6081.html
分享到:
相关推荐
在IT行业中,jQuery、JSON以及Java的组合是构建动态Web应用程序的常见技术栈。这个"jquery json 增删改查"的项目是为了解决客户端与服务器端数据交互问题,特别是涉及到数据库操作时,如添加(Add)、删除(Delete)...
"jQuery JSON with PHP json_encode and json_decode"这个主题涉及到如何利用JSON(JavaScript Object Notation)这一轻量级的数据交换格式,结合PHP的`json_encode`和`json_decode`函数,实现前后端之间的数据通信...
**jQuery JSON 省市区街道四级联动地址选择插件** 在网页开发中,尤其是在电子商务网站或者需要用户填写详细地址的应用中,四级联动地址选择插件是一个常见且实用的功能。它通常包括省、市、区(县)和街道四个级别...
该实例通过ASP.NET编程语言全面解剖JSON多对象的组成原理,JSON是基于轻量级的数据传输方式进行数据通信的方式。
这个主题"jQuery json动态数据表格分页代码"聚焦于使用jQuery、PHP和AJAX来实现这一功能。以下是相关知识点的详细说明: 1. **jQuery**:jQuery是一个流行的JavaScript库,它简化了HTML文档遍历、事件处理、动画和...
《jQuery JSON v2.6.0详解》 在Web开发领域,jQuery库以其简洁的API和强大的功能,深受开发者喜爱。而JSON(JavaScript Object Notation)作为一种轻量级的数据交换格式,更是广泛应用于数据传输。当这两者结合,就...
在IT行业中,jQuery、JSON和Cookie是三种非常重要的技术元素,它们在网页开发和数据管理中扮演着关键角色。现在,我们来详细探讨一下这些概念及其在实际应用中的结合。 首先,jQuery是一个轻量级的JavaScript库,它...
总结来说,"jquery json 搜索与分页效果代码"这个压缩包可能包含了一个示例项目,演示了如何利用jQuery处理前端搜索和分页,同时通过Ajax与后端交互,处理JSON数据。这个例子对于学习和实践Web前端开发中的数据检索...
Struts2JQueryJson是一个基于Struts2框架与jQuery库,结合JSON(JavaScript Object Notation)数据格式,实现Ajax异步加载对象数据的技术方案。在Web应用开发中,这种技术可以提升用户体验,因为它允许页面部分内容...
在IT行业中,jQuery、JSON和S2SH(Struts2、Spring、Hibernate)是三个非常重要的技术组件,它们分别在Web开发的不同层面发挥着关键作用。让我们深入了解一下这些技术及其在实际项目中的应用。 首先,jQuery是一个...
标题“flgl.rar_ajax json jquery_jquery json”和描述中提到的主题主要集中在使用Ajax、JSON以及jQuery技术在前端实现与后端数据交互的过程。这里,我们详细探讨这些关键概念及其在实际开发中的应用。 首先,**...
《jQuery JSON省市区街道四级联动地址选择插件详解》 在网页开发中,尤其是在涉及到用户信息填写时,省市区街道的选择通常是一个常见的需求。为了提高用户体验并简化开发工作,jQuery JSON省市区街道四级联动地址...
在本文中,我们将深入探讨如何使用jQuery和JSON技术与ASP.NET后台进行交互,结合实际案例进行解析。jQuery是一个轻量级、高性能的JavaScript库,它极大地简化了DOM操作、事件处理、动画效果以及Ajax交互。而JSON...
**jQuery与JSON简介** jQuery是一个高效、简洁且易用的JavaScript库,它极大地简化了JavaScript编程,使得DOM操作、事件处理、Ajax交互等任务变得更加容易。JSON(JavaScript Object Notation)则是一种轻量级的...
在IT行业中,jQuery和JSON是两个非常重要的技术概念,它们在网页开发,特别是前端交互方面起着关键作用。本文将详细解析如何利用jQuery和JSON来创建一个投票系统,并且会探讨异步投票代码的工作原理。 首先,jQuery...
标题"jquery json array 实例"指的是一次使用jQuery处理JSON数组的实践。在前后端交互中,通常由后端服务器生成JSON数据,前端使用jQuery进行接收和处理。下面将详细解释这个过程: 1. **JSON数据格式**:JSON是一...
Struts、jQuery和JSON是Web开发中的三大核心技术,它们在构建动态、交互性强的Web应用程序时发挥着重要作用。本文将详细解析这三个技术如何协同工作,以及在实际案例中如何运用。 首先,Struts是一个基于MVC(Model...
这个"Struts2 JQueryJson例子 .rar"压缩包很可能是包含了一个实际的项目实例,演示了如何在Struts2框架中利用JQuery和JSON进行数据交互。下面将详细讲解Struts2、JQuery和JSON的相关知识点: 1. **Struts2框架**: ...
本示例“jqueryjson.zip”着重于如何利用jQuery实现省市区三级联动的功能,这是一种常见的前端交互设计,常见于地址填写、定位服务等场景。 首先,我们来理解“三级联动”的概念。在省市区三级联动中,用户在选择一...