Jquery ajax不能解析json对象,报Invalid JSON错误的原因和解决方法


Posted in Javascript onMarch 27, 2010

下面说一下,最近在使用jquery 1.4中使用$.ajax()方法解析json对象遇到的问题。

Json对象是:

[{name:'二手房出售',infoCount:0,pageUrl:'/ershoufang'},{name:'二手房求购',infoCount:0,pageUrl:'/qiugou'},{name:'二手房装修',infoCount:0,pageUrl:'/esfzhuangxiu'},{name:'二手回收',infoCount:0,pageUrl:'/huishou'},{name:'二手摩托车',infoCount:0,pageUrl:'/motor'},{name:'二手汽车求购',infoCount:0,pageUrl:'/ershoucheqg'},{name:'二手汽车转让',infoCount:9,pageUrl:'/ershouche'},{name:'二手市场',infoCount:0,pageUrl:'/ershoushichang'}]

不知道大家有没有发现这段json对象的问题。这样的写法在js脚本和jquery 1.4之前的版本都是没有问题的。因为在1.3及更早版本中,jQuery通过javascript的eval方法来解析json对象。在1.4中,jQuery使用了更严格的方法来解析json。所有的内容都必须使用双引号。

这点从jQuery.parseJSON(json) 可以看出,parseJSON在文档中的解释是:

接受一个JSON字符串,返回解析后的对象。

传入一个畸形的JSON字符串会抛出一个异常。比如下面的都是畸形的JSON字符串:
{test: 1} ( test 没有包围双引号)
{'test': 1} (使用了单引号而不是双引号)

另外,如果你什么都不传入,或者一个空字符串、null或undefined,parseJSON都会返回 null 。

Javascript 相关文章推荐
Ext javascript建立超链接,进行事件处理的实现方法
Mar 22 Javascript
JS清除IE浏览器缓存的方法
Jul 26 Javascript
JavaScript实现的购物车效果可以运用在好多地方
May 09 Javascript
js的各种排序算法实现(总结)
Jul 23 Javascript
jQuery控制控件文本的长度的操作方法
Dec 05 Javascript
webpack入门+react环境配置
Feb 08 Javascript
JQ中$(window).load和$(document).ready区别与执行顺序
Mar 01 Javascript
Vue-cli-webpack搭建斗鱼直播步骤详解
Nov 17 Javascript
Vue项目中设置背景图片方法
Feb 21 Javascript
微信小程序下拉加载和上拉刷新两种实现方法详解
Sep 05 Javascript
vue中进行微博分享的实例讲解
Oct 14 Javascript
jQuery treeview树形结构应用
Mar 24 jQuery
javascript sudoku 数独智力游戏生成代码
Mar 27 #Javascript
Javascript 函数中的参数使用分析
Mar 27 #Javascript
js几个验证函数代码
Mar 25 #Javascript
Firefox下提示illegal character并出现乱码的原因
Mar 25 #Javascript
JavaScript setTimeout和setInterval的使用方法 说明
Mar 25 #Javascript
JavaScript 学习初步 入门教程
Mar 25 #Javascript
ext 列表页面关于多行查询的办法
Mar 25 #Javascript
You might like
Win2003+apache+PHP+SqlServer2008 配置生产环境
2014/07/29 PHP
php cookie用户登录的详解及实例代码
2017/01/03 PHP
PHP性能分析工具xhprof的安装使用与注意事项
2017/12/19 PHP
使用js+jquery实现无限极联动
2013/05/23 Javascript
div+css+js实现无缝滚动类似marquee无缝滚动兼容firefox
2013/08/29 Javascript
js语法学习之判断一个对象是否为数组
2014/05/13 Javascript
理解javascript回调函数
2014/12/28 Javascript
javascript数组随机排序实例分析
2015/07/22 Javascript
JS实现鼠标框选效果完整实例
2016/06/20 Javascript
深入理解jquery中的each用法
2016/12/14 Javascript
JS如何生成一个不重复的ID的函数
2016/12/25 Javascript
JavaScript定义全局对象的方法示例
2017/01/12 Javascript
js 中rewrap-ajax.js插件实例代码
2017/10/20 Javascript
微信小程序使用toast消息对话框提示用户忘记输入用户名或密码功能【附源码下载】
2017/12/09 Javascript
Vue面试题及Vue知识点整理
2018/10/07 Javascript
浅谈Vue.js之初始化el以及数据的绑定说明
2019/11/14 Javascript
[01:36]DOTA2完美大师赛趣味视频之与队友相处的十万个技巧
2017/11/19 DOTA
Python中使用第三方库xlrd来读取Excel示例
2015/04/05 Python
简单说明Python中的装饰器的用法
2015/04/24 Python
在Python中操作时间之strptime()方法的使用
2020/12/30 Python
快速入手Python字符编码
2016/08/03 Python
Python基于递归算法求最小公倍数和最大公约数示例
2018/07/27 Python
python对于requests的封装方法详解
2019/01/03 Python
python实现各种插值法(数值分析)
2019/07/30 Python
在Python中使用MySQL--PyMySQL的基本使用方法
2019/11/19 Python
TensorFlow:将ckpt文件固化成pb文件教程
2020/02/11 Python
pytorch 计算Parameter和FLOP的操作
2021/03/04 Python
美国环保妈妈、儿童和婴儿用品购物网站:The Tot
2019/11/24 全球购物
函授本科毕业自我鉴定
2013/10/09 职场文书
先进集体获奖感言
2014/02/13 职场文书
投标担保书范文
2014/04/02 职场文书
小班评语大全
2014/05/04 职场文书
师范生求职信
2014/06/14 职场文书
2016年优秀教师先进事迹材料
2016/02/26 职场文书
golang goroutine顺序输出方式
2021/04/29 Golang
golang 实现并发求和
2021/05/08 Golang