最近做一个控件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是没问题的。看来还是要规范点好。
分享到:
相关推荐
本节主要介绍了使用jQuery.parseJSON(json)将JSON字符串转换成js对象,需要的朋友可以参考下
下面小编就为大家带来一篇关于JSON.parse(),JSON.stringify(),jQuery.parseJSON()的用法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
jQuery.parseJSON()函数用于将格式完好的JSON字符串转为与之对应的JavaScript对象。 所谓”格式完好”,就是要求指定的字符串必须符合严格的JSON格式,例如:属性名称必须加双引号、字符串值也必须用双引号。 如果...
本文实例讲述了jQuery+json实现动态创建复杂... var obj = jQuery.parseJSON($(#SubJsonStrValue).val()); window.ALLPARAMTERS = obj; var row_str = ; var span_num = 1 for (var i = 0; i < obj> 0) { row_st
自动将字符串转化为Json对象 使用方法Json parse 在前端使用更方便
JSON 的格式说明可以在可以这里看到,非常...jQuery.parseJSON 函数提供了解析的支持,详细的说明见这里。 代码如下: var obj = jQuery.parseJSON(‘{“name”:”John”}’); alert( obj.name === “John” );
//jQuery.parseJSON(jsonstr),可以将json字符串转换成json对象 2>浏览器支持的转换方式(Firefox,chrome,opera,safari,ie9,ie8)等浏览器: 代码如下: JSON.parse(jsonstr); //可以将json字符串转换成json...
struts2+jquery+ajaxfileupload 需要正确配置struts2文件struts-xml文件中需要配置extends="json-default"。如果返回json结果需要在前台js中解析json数据,要用jquery的jQuery.parseJSON(json)。
就是说哪里调用了jQuery,就把修正后的transport.js及json2.js导入,并且修复toJSONString和parseJSON方法,其他页面就不必了。 所以说,也不建议在header里面就加入了jQuery,因为这样每个页面都会出现冲突了,...
1)$.parseJSON方法返回的是一个字符串,而不是JSON对象。 2)要将字符串转化成对象,很容易想起JS中的eval方法。事实上是可以的,不过需要加上括号。如var js=”{\”PageIndex\”:\”1\”}”;var obj=eval(“...
11.2.10 jQuery.parseJSON(json) 189 11.3 函数操作 190 11.3.1 jQuery.noop 190 11.3.2 jQuery.proxy(function, scope) 190 11.4 测试操作 191 11.4.1 jQuery.contains(container, contained) 191 11.4.2 jQuery....
1、加入JSON2.js文件 原因很简单,transport修改Object是为了加入支持JSON的方法。所以这里用JSON官网在...2.3.2 继续在transport.js搜索result.parseJSON() 改为调用 parseObjectToJSON发那个发(具体在408行左右)
Papa Parse - Powerful CSV parser that converts CSV to JSON and JSON to CSV. Supports web workers and streaming large files. Gracefully handles malformed input. ...
本文实例讲述了JS简单循环遍历json数组的方法。分享给大家供大家参考,具体如下: 例如数据库里面的json字符串是这样的 var str = '[{"name":"宗2瓜","num":"1","price":"122...var cc = jQuery.parseJSON(data); ale
但是如果用C++ driver读取这个值是,则得到”25″”, 因此如果将它直接返回到浏览器端,用jQuery.parseJSON()来解析就会报错。 C++段序列化成字符串的时候需要判断一下,将”替换成\”. 代码如下: void string_to_...
今天在这里笔者想简单谈谈jquery里面的JSON.parse()和JSON.stringify()函数,顺便还会提一下原生JS里面的eval()函数 (1)JSON.parse 函数 作用:将 JavaScript 对象表示法 (JSON) 字符串转换为对象。