`
weakfi
  • 浏览: 97057 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

从jquery的parseJSON方法了解JSON格式规范

阅读更多

最近做一个控件jqGrid,这个表格控件从后台获取数据使用的是jquery的.ajax()方法。

我在后台返回一组字符串:

 

"{"total":100,"rows":[{"cell":['0','电影_0'],"id":"0"},{"cell":['1','电影_1'],"id":"1"},{"cell":['2','电影_2'],"id":"2"},{"cell":['3','电影_3'],"id":"3"},{"cell":['4','电影_4'],"id":"4"},{"cell":['5','电影_5'],"id":"5"},{"cell":['6','电影_6'],"id":"6"},{"cell":['7','电影_7'],"id":"7"},{"cell":['8','电影_8'],"id":"8"},{"cell":['9','电影_9'],"id":"9"}],"records":"10","page":"1"}"

 

 

后,死活在前端显示不出来。

后来发现是发生了解析错误。

在jquery的回调方法中执行了parseJSON去解析字符串。

该方法的先把我的JSON字符串替换成了:

 

"{]:],]{]']','电影_]'],]:]},{]']','电影_]'],]:]},{]']','电影_]'],]:]},{]']','电影_]'],]:]},{]']','电影_]'],]:]},{]']','电影_]'],]:]},{]']','电影_]'],]:]},{]']','电影_]'],]:]},{]']','电影_]'],]:]},{]']','电影_]'],]:]}],]:],]:]}"
 

 最后去json官网才发现规定了json里面的字符串必须要用双引号:

 

json.org 写道
值(value)可以是双引号括起来的字符串(string)、数值(number)、true、false、 null、对象(object)或者数组(array)。这些结构可以嵌套。
 

而我在"cell"的array里面的字符串用了单引号,所以发生了问题。可是在浏览器端直接eval我的那段json是没问题的。看来还是要规范点好。

分享到:
评论
1 楼 yatou_0209 2012-02-23  
我也遇到这个问题,可以帮忙解决下吗。。

相关推荐

    Jquery.json.js

    在早期版本的jQuery中,`jQuery.parseJSON()`函数用于将JSON字符串解析为JavaScript对象。然而,随着JSON支持成为JavaScript语言标准的一部分,现代浏览器都内置了`JSON.parse()`方法,这通常被认为更安全且推荐使用...

    jquery_json.rar_JSON_jquery_jquery-json_jquery.json_jquery.json.

    在实际应用中,例如,当需要从服务器获取JSON数据并将其显示在网页上时,`$.ajax`或`$.getJSON`等jQuery方法可以用来发送Ajax请求。收到JSON响应后,使用`$.parseJSON`将JSON字符串解析成JavaScript对象,然后可以...

    jquery-json美化

    "jQuery-JSON美化"就是一种利用jQuery对JSON数据进行格式化和美化显示的技术,旨在提高数据的可读性,尤其是在页面上直接展示复杂JSON数据时。 JSON美化通常涉及以下几个关键知识点: 1. **JSON解析**:在...

    jquery1.7+jquery for json 2.3

    2. **`jQuery.parseJSON()`**:与`jQuery.toJSON()`相反,此方法将JSON格式的字符串解析成JavaScript对象,方便在客户端操作。如: ```javascript var jsonString = '{"name": "John", "age": 30}'; var obj = ...

    jquery-json使用

    在jQuery中,我们可以使用`$.parseJSON()`方法将JSON字符串转换为JavaScript对象。例如,假设我们从服务器获取到一个JSON字符串: ```json var jsonString = '{"name": "John", "age": 30, "city": "New York"}'; `...

    jQuery.parseJSON(json)将JSON字符串转换成js对象

    首先,需要明确jQuery.parseJSON函数的作用是把一个JSON格式的字符串解析成JavaScript对象。这个函数接受一个字符串类型的参数jsonString,它必须是一个有效的JSON格式的字符串。所谓的有效JSON格式,意味着这个字符...

    JQuery操作json的例子

    此外,jQuery 还支持 `.parseJSON()` 方法,用于解析 JSON 字符串为 JavaScript 对象。但需要注意,这个方法已被废弃,现在推荐使用原生的 JavaScript `JSON.parse()` 方法,如: ```javascript var jsonString = '...

    jquery.json-2.4.min.js

    `evalJSON`函数提供了一个安全的方式,它内部实现了JSON.parse(在旧版本的浏览器中可能为`$.parseJSON`),能够确保只有JSON格式的字符串才能被正确解析,防止了潜在的安全问题。例如,当你收到服务器返回的JSON...

    前端项目-jquery-json.zip

    1. **jQuery JSON插件源码**:这个插件提供了$.toJSON()和$.parseJSON()两个主要方法。$.toJSON()可以将JavaScript对象转换为JSON字符串,而$.parseJSON()则可以将JSON格式的字符串解析为JavaScript对象。 2. **...

    jquery.jsoncookie.zip

    使用`jquery.jsoncookie.js`插件,你可以方便地将JSON对象序列化成字符串并存入Cookie,或者从Cookie中读取JSON数据并反序列化回对象。以下是一些基本用法: 1. 存储JSON数据到Cookie: ```javascript $.cookie('...

    jquery.json-2.3.js

    解析JSON($.parseJSON())是指将JSON格式的字符串转换为JavaScript对象,这对于从服务器获取数据并进行操作至关重要。例如,当你从一个RESTful API接收JSON响应时,可以使用这个函数将返回的字符串转化为可以直接...

    SSH+jQuery+json 实现的Ajax操作,绝对精华,代码简练清晰,绝对能看明白

    2. **解析与渲染**:jQuery的`$.parseJSON()`(现在已弃用,推荐使用`$.getJSON()`或`$.ajax()`的dataType设置为'json')方法用于解析JSON字符串为JavaScript对象,然后可以在前端动态更新DOM。 **Ajax级联操作** ...

    Jquery ajax json 总结

    JQuery AJAX 和 JSON 是在 Web 开发中处理异步数据传输和数据格式化的重要工具。本文将深入探讨这两个概念以及它们在实际应用中的使用方法。 首先,JQuery 的 AJAX(Asynchronous JavaScript and XML)功能允许...

    用jquery解析JSON数据的方法20110227

    例如,`JSON.parse()`方法(在现代浏览器中可用)是一个安全的替代品,但不适用于旧版浏览器。如果需要支持旧浏览器,可以引入第三方库,确保安全地解析JSON数据。 总结来说,解析JSON数据在jQuery中通常是安全和...

    jQuery+JSON

    3. **jQuery的$.parseJSON()**:如果你有一个JSON格式的字符串,可以使用`$.parseJSON()`将其转换为JavaScript对象。然而,这个方法在jQuery 3.0之后已被弃用,推荐使用原生的`JSON.parse()`方法。 4. **JSONP**:...

    JqueryJson

    3. **序列化与反序列化**: jQuery的`$.param()`方法可以将JavaScript对象序列化为URL查询字符串格式,而`$.parseJSON()`(在jQuery 1.4.1及以后的版本中)或`JSON.parse()`(原生JavaScript方法)可以将JSON字符串反...

    jQuery.parseJSON()函数详解

    从 JSON 格式规范的角度,现代浏览器已经内置了原生的 `JSON.parse()` 方法,它同样可以用来解析 JSON 字符串。在 jQuery 1.4.1 之后的版本,如果浏览器支持,`jQuery.parseJSON()` 会优先使用 `JSON.parse()`。这...

    jQuery Json v2.6.0

    值得注意的是,从jQuery 1.4.1版本开始,`$.parseJSON()`已经被jQuery自身集成,因此在较新版本的jQuery中,你可以直接使用`$.parseJSON()`而无需引入额外的jQuery JSON插件。然而,`$.toJSON()`在jQuery的核心库中...

Global site tag (gtag.js) - Google Analytics