用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
.
分享到:
相关推荐
PHP是常用于处理请求并返回JSON数据的后端语言之一。在文章中的PHP实例部分,使用了ThinkPHP框架中的M方法来查询数据库,返回的是一个包含菜品信息的数组,然后使用json_encode()函数将数组编码为JSON字符串。 3. ...
关于"jQuery读取json数据"这个主题,我们将会深入探讨如何利用jQuery的Ajax功能来高效地加载和解析JSON格式的数据,以及这样做带来的优势。 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它易于...
在本文中,我们将探讨如何使用SSH1框架与jQuery的AJAX功能来处理JSON二维数组,特别是在实现菜单...整个流程包括前端的AJAX请求、后端的JSON数据处理以及UI交互逻辑。理解这些技术对于开发复杂的Web应用程序至关重要。
用jquery解析JSON数据的方法,作为jquery异步请求的传输对象,jquery请求后返回的结果是json对象,这里考虑的都是服务器返回JSON形式的字符串的形式,对于利用JSONObject等插件封装的JSON对象,与此亦是大同小异,这里...
部分代码参考自网络,如有侵权,请联系删除
通过以上的知识点,可以了解到在Jquery Ajax异步处理JSON数据的过程中,开发者需要了解前端如何发送请求、指定期望的响应数据类型、以及如何在回调函数中处理服务器返回的JSON格式数据。这种机制使得Web应用可以提供...
1. 确保服务器返回的JSON数据格式正确,避免语法错误。 2. 验证Ajax请求的URL是否可用,以及是否允许跨域请求(如果适用)。 3. 检查输入的`minLength`参数,以决定用户输入多少字符后开始触发autoComplete。 4. ...
在前端开发中,有时我们需要将JSON格式的数据转换成表单(form)的格式进行提交,以便于服务器端处理。在JavaScript的世界里,jQuery库提供了一种便捷的方式来进行这样的转换。本篇文章将深入探讨如何利用jQuery从...
在本文中,我们将探讨两种在Struts2框架中返回JSON数据的方法。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛用于前后端交互,尤其是在AJAX请求中。Struts2提供了一套方便的机制来支持JSON...
这里的`dataType: 'json'`指定我们期望服务器返回JSON格式的数据。当请求成功时,`success`回调函数会被调用,其中`response`参数就是JSON解析后的JavaScript对象。 JSON(JavaScript Object Notation)是一种轻量...
当服务器返回JSON字符串,而jQuery异步请求没有指定数据类型或以字符串形式接收时,我们可以使用`eval()`函数将其转换为JavaScript对象。但请注意,`eval()`是危险的,因为它可以执行任何JavaScript代码,可能导致...
jQuery提供了方便的方法来处理JSON数据,包括`$.getJSON()`和`$.ajax()`等函数,可以方便地从服务器获取JSON数据并将其转化为JavaScript对象,或者将JavaScript对象转换为JSON字符串发送到服务器。 **jQuery的get...
在Web开发中,jQuery是一个非常流行的JavaScript库,它极大地简化了DOM操作、事件处理和Ajax交互。本教程将深入探讨如何使用...实践是最好的老师,通过实际操作,你会更加熟练地掌握使用jQuery处理JSON数据的技巧。
3. **Struts2与JSON的集成**:在Struts2中,可以通过配置Action类和结果类型来返回JSON数据。通常,需要在Action类的方法上添加`@ResponseBody`注解或使用`JsonResult`结果类型。此外,还需要在struts.xml配置文件中...
这个例子中,前端通过Ajax向服务器的'/api/data'路径发送GET请求,期望返回JSON数据。当请求成功时,将在页面上显示接收到的message字段的值。 总的来说,SpringMVC、jQuery、Ajax和JSON的结合,为Web应用提供了一...
jQuery的Ajax方法常用于从服务器获取JSON数据,实现页面动态更新。例如,使用`$.getJSON()`获取JSON数据并更新页面: ```javascript $.getJSON('data.json', function(data) { var html = ''; $.each(data.items,...
总之,jQuery提供了方便的API来处理与后台交互时的JSON数据,无论是简单的对象还是复杂的结构。通过正确设置`dataType`并使用适当的回调函数,可以轻松地解析和利用这些数据。在实际开发中,理解并熟练运用这些技巧...
在这个示例中,可能有一个HTML页面,它使用jQuery来触发一个Ajax请求,请求的目标是一个服务器端的接口,该接口返回JSON数据。例如,当用户点击某个按钮时,可能会有如下代码: ```javascript $("#btnAjax").click...
总结来说,"Jquery+Json实现无刷新分页插件"是利用Jquery的事件处理和Ajax功能,结合Json数据格式,实现的一种高效、用户体验友好的分页解决方案。开发者可以通过这样的插件轻松地在自己的项目中实现动态分页,同时...
dataType: 'json', // 预期服务器返回的数据类型 success: function(response) { // 处理成功返回的数据 }, error: function(jqXHR, textStatus, errorThrown) { // 处理错误 } }); ``` 3. **jQuery事件...