jQuery使用ajax方法解析返回的json数据功能示例
发布时间 - 2026-01-10 22:25:04 点击率:次本文实例讲述了jQuery使用ajax方法解析返回的json数据功能。分享给大家供大家参考,具体如下:

最近在用jQuery的ajax方法传递接收json数据时发现一个问题,那就是返回的data数据,有时候可以直接作为json数据使用,可有时候又不行。查了些资料,解释如下:
$.ajax({
url: ajaxurl,
type: "POST",
success: function(data){
//假设返回的json数据里有status及info2个属性
//有时候可以直接ajaxobj.status或者ajaxobj["status"]去访问
//但有时候,却要通过eval()或者 $.parsejson();才可以通过ajaxobj.status访问,而且这种情况下,需要是complete而不是success
ajaxobj=eval("("+data+")");
//或者$.parsejson()
//var ajaxobj = $.parsejson(data);
if(ajaxobj.status=="0")
{
alert("请登陆.");
}
else if(ajaxobj.status=="1")//未绑定微博
{
alert(ajaxobj.info);
}
return true;
},
error:function(ajaxobj)
{
if(ajaxobj.responseText!='')
alert(ajaxobj.responseText);
}
});
先说明第一种情况:
能够直接 data.属性名访问的情况,服务器端代码一定是直接return的一个常量字符串。
什么是常量字符串呢,常量字符串就是指直接用“”组成的字符串,没有定义String 变量直接把一串“”print到前台的情况,就可以直接data.属性名访问,而且jquery端只要写success就可以拿到。
下面是造成要eval并且不能进入success的原因:
这种情况是因为服务器端向外print的时候是一个String对象,通常此类问题在我的代码里是因为后台json比较复杂,在组织的时候我用到了StringBuffer,然后最后print的时候print的是StringBuffer对象的toString,所以就相当于print了一个String对象
这种情况下jquery的ajax方法就不会进入success方法,只能用complete接收,并且想要解析data里的json数据的话,必须对data.responseText进行eval ()或者 $.parsejson();
除此两点,还有需要注意的是,如果你使用的是jq1.4,那么他对json的格式有着更严格的要求,所有的key和属性都要用双引号标注起来,虽然key不用双引号原生的js是允许的,但是jq1.4似乎有这个要求。
以上是我个人的想法跟理解,若有不同见解欢迎指教.
PS:关于json操作,这里再为大家推荐几款比较实用的json在线工具供大家参考使用:
在线JSON代码检验、检验、美化、格式化工具:
http://tools./code/json
JSON在线格式化工具:
http://tools./code/jsonformat
在线XML/JSON互相转换工具:
http://tools./code/xmljson
json代码在线格式化/美化/压缩/编辑/转换工具:
http://tools./code/jsoncodeformat
在线json压缩/转义工具:
http://tools./code/json_yasuo_trans
C语言风格/HTML/CSS/json代码格式化美化工具:
http://tools./code/ccode_html_css_json
更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jquery中Ajax用法总结》、《jQuery操作json数据技巧汇总》、《jQuery form操作技巧汇总》、《jQuery常用插件及用法总结》、《jQuery扩展技巧总结》、《jQuery表格(table)操作技巧汇总》及《jquery选择器用法总结》
希望本文所述对大家jQuery程序设计有所帮助。
# jQuery
# ajax
# 解析
# 返回
# json数据
# JS解析json数据并将json字符串转化为数组的实现方法
# JavaScript中解析JSON数据的三种方法
# JS中Json数据的处理和解析JSON数据的方法详解
# Jquery解析json数据详解
# JavaScript处理解析JSON数据过程详解
# javascript解析json数据的3种方式
# json数据传到前台并解析展示成列表的方法
# javascript对JSON数据排序的3个例子
# js解析与序列化json数据(二)序列化探讨
# javascript 循环读取JSON数据的代码
# JavaScript解析JSON数据示例
# 的是
# 是因为
# 可以直接
# 就可以
# 转换工具
# 是一个
# 情况下
# 操作技巧
# 如果你
# 双引号
# 相关内容
# 他对
# 感兴趣
# 我用
# 给大家
# 要用
# 才可以
# 此类
# 这种情况
# 又不
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
如何在万网开始建站?分步指南解析
Laravel如何发送邮件和通知_Laravel邮件与通知系统发送步骤
实现点击下箭头变上箭头来回切换的两种方法【推荐】
php json中文编码为null的解决办法
如何快速建站并高效导出源代码?
如何在IIS中配置站点IP、端口及主机头?
做企业网站制作流程,企业网站制作基本流程有哪些?
如何确保FTP站点访问权限与数据传输安全?
nodejs redis 发布订阅机制封装实现方法及实例代码
千库网官网入口推荐 千库网设计创意平台入口
Laravel怎么实现软删除SoftDeletes_Laravel模型回收站功能与数据恢复【步骤】
如何彻底卸载建站之星软件?
如何用搬瓦工VPS快速搭建个人网站?
昵图网官网入口 昵图网素材平台官方入口
在Oracle关闭情况下如何修改spfile的参数
移动端脚本框架Hammer.js
Laravel如何处理JSON字段_Eloquent原生JSON字段类型操作教程
如何在万网主机上快速搭建网站?
在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?
Win11怎么更改系统语言为中文_Windows11安装语言包并设为显示语言
详解Nginx + Tomcat 反向代理 负载均衡 集群 部署指南
微信小程序 scroll-view组件实现列表页实例代码
Laravel Seeder怎么填充数据_Laravel数据库填充器的使用方法与技巧
奇安信“盘古石”团队突破 iOS 26.1 提权
Laravel Artisan命令怎么自定义_创建自己的Laravel命令行工具完全指南
Laravel怎么实现验证码功能_Laravel集成验证码库防止机器人注册
Windows家庭版如何开启组策略(gpedit.msc)?(安装方法)
如何正确选择百度移动适配建站域名?
Laravel的.env文件有什么用_Laravel环境变量配置与管理详解
如何在VPS电脑上快速搭建网站?
谷歌浏览器下载文件时中断怎么办 Google Chrome下载管理修复
在线制作视频网站免费,都有哪些好的动漫网站?
关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)
如何用低价快速搭建高质量网站?
JavaScript如何实现倒计时_时间函数如何精确控制
Python制作简易注册登录系统
Python文本处理实践_日志清洗解析【指导】
如何制作一个表白网站视频,关于勇敢表白的小标题?
Laravel如何实现API版本控制_Laravel版本化API设计方案
Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】
Win11应用商店下载慢怎么办 Win11更改DNS提速下载【修复】
JavaScript数据类型有哪些_如何准确判断一个变量的类型
如何用AWS免费套餐快速搭建高效网站?
Laravel如何获取当前用户信息_Laravel Auth门面获取用户ID
JavaScript 输出显示内容(document.write、alert、innerHTML、console.log)
创业网站制作流程,创业网站可靠吗?
Laravel如何创建自定义Facades?(详细步骤)
HTML5段落标签p和br怎么选_文本排版常用标签对比【解答】
高防服务器租用首荐平台,企业级优惠套餐快速部署
香港服务器网站生成指南:免费资源整合与高速稳定配置方案

