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 相关文章推荐
jQuery控制TR显示隐藏的几种方法
Jun 18 Javascript
jquery实现未经美化的简洁TAB菜单效果
Aug 28 Javascript
基于Jquery插件Uploadify实现实时显示进度条上传图片
Mar 26 Javascript
详解JavaScript权威指南之对象
Sep 27 Javascript
jQuery Masonry瀑布流布局神器使用详解
May 25 jQuery
移动设备手势事件库Touch.js使用详解
Aug 18 Javascript
jQuery事件多次绑定与解绑问题实例分析
Feb 19 jQuery
Vue 递归多级菜单的实例代码
May 05 Javascript
js回溯法计算最佳旅行线路代码实例
Sep 11 Javascript
js DOM的事件常见操作实例详解
Dec 16 Javascript
Element InputNumber计数器的使用方法
Jul 27 Javascript
vue cli3.0打包上线静态资源找不到路径的解决操作
Aug 03 Javascript
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
我的论坛源代码(五)
2006/10/09 PHP
基于mysql的论坛(4)
2006/10/09 PHP
php读取本地文件常用函数(fopen与file_get_contents)
2013/09/09 PHP
php实现天干地支计算器示例
2014/03/14 PHP
php一行代码获取文件后缀名实例分析
2014/11/12 PHP
php实现将上传word文件转为html的方法
2015/06/03 PHP
PHP GD库相关图像生成和处理函数小结
2016/09/30 PHP
php微信公众号开发(2)百度BAE搭建和数据库使用
2016/12/15 PHP
PHP如何通过带尾指针的链表实现'队列'
2020/10/22 PHP
从阶乘函数对比Javascript和C#的异同
2012/05/31 Javascript
从数据结构的角度分析 for each in 比 for in 快的多
2013/07/07 Javascript
jQuery中before()方法用法实例
2014/12/25 Javascript
微信JSSDK上传图片
2015/08/23 Javascript
jQuery实现可展开折叠的导航效果示例
2016/09/12 Javascript
微信小程序之小豆瓣图书实例
2016/11/30 Javascript
原生js实现电商侧边导航效果
2017/01/19 Javascript
jQuery获取Table某列的值(推荐)
2017/03/03 Javascript
Javascript快速实现浏览器系统通知
2017/08/26 Javascript
使用JS代码实现俄罗斯方块游戏
2018/08/03 Javascript
vue-cli2 构建速度优化的实现方法
2019/01/08 Javascript
Node.js 多进程处理CPU密集任务的实现
2019/05/26 Javascript
package.json各个属性说明详解
2020/03/11 Javascript
Vue使用自定义指令实现拖拽行为实例分析
2020/06/06 Javascript
videocapture库制作python视频高速传输程序
2013/12/23 Python
python使用点操作符访问字典(dict)数据的方法
2015/03/16 Python
Python之py2exe打包工具详解
2017/06/14 Python
python脚本监控Tomcat服务器的方法
2018/07/06 Python
Python+OpenCV图片局部区域像素值处理改进版详解
2019/01/23 Python
新年快乐! python实现绚烂的烟花绽放效果
2019/01/30 Python
Python SSL证书验证问题解决方案
2020/01/13 Python
opencv实现图像几何变换
2021/03/24 Python
农林环境专业求职信
2014/03/13 职场文书
副科竞争上岗演讲稿
2014/05/12 职场文书
单位工作证明书格式
2014/10/04 职场文书
个人简历求职信范文
2015/03/20 职场文书
用Python实现一个打字速度测试工具来测试你的手速
2021/05/28 Python