今天用到jquery来处理ajax,用到了json。但是很诧异,jquery的ajax回调时一直调用了error函数(一直提示parse error异常),success函数一次没执行过??。代码如下: 服务器返回结果为:{id:"1",data:"none"} 搞了很久,我把库换回1.3.1可以成功~~lol,最后发现是jQuery1.4.2这个版本引起的,1.4.2中jq把JSON的解析由原来的eval改为极其严格的$.parseJSON()来处理了。我在官方的说明文档中找到的,如下: http://api.jquery.com/jQuery.ajax/ 就是说 jQuery 1.4对服务端返回的JSON 数据要求比较严格,必须严格按照JSON的标准来了。 下面我把$.parseJSON的说明文档也摘要下来: Passing in a malformed JSON string will result in an exception being thrown. For example, the following are all malformed JSON strings: {test: 1} (test does not have double quotes around it). 译:test两边必须有双引号 {"test":1} 现在什么都讲究标准啦,我们老老实实按标准来吧。我下面列举几个符合标准的例子: {"myvalue":1}
$.ajax({
type:
'POST'
,
url:
'/go.php?p=chat.chatCenter&a=send'
,
dataType:
'json'
,
data:
'style='
+Tstyle+
'&content='
+content,
success:
function
(data){$.chatCenter.sendEnd(data);},
error:
function
(data,t){alert(
"系统异常["
+t+
"]"
);$.chatCenter.sendEnd();}
});
dataType
...
"json": Evaluates the response as JSON and returns a JavaScript object. In jQuery 1.4 the JSON data is parsed in a strict manner; any malformed JSON is rejected and a parse error is thrown. (See?json.org?for more information on proper JSON formatting.)
jQuery.parseJSON( json )
{'test': 1} ('test' is using single quotes instead of double quotes). 译:test两边的引号不能为单引号,一定要是双引号
Additionally if you pass in nothing, an empty string, null, or undefined, 'null' will be returned from parseJSON. Where the browser provides a native implementation of JSON.parse, jQuery uses it to parse the string. For details on the JSON format, see http://json.org/.
{"myvalue":"red"}
{"myvalue":["black",250]}
详细解决方案
jQuery1.4.2的json有关问题
热度:110 发布时间:2012-10-31 14:37:32.0
相关解决方案
- (Struts2+JSON+Ajax) XMLHttpRequest ==500如何解决
- json 解析有关问题
- struts2-json中诠注@JSON(deserialize=false)是什么用?不是阻止JSON反序列化成JAVA对象吗?求解
- 请教哪里可以上到 struts2-json-plugin-2.1.8的源文件
- java+jquery easy ui + json + struts分页例子
- servlet+jquery1.4.2(ajax error?)解决方案
- ssh json jar 有关问题
- json 有关问题
- AJAX 传递数据如何样才可以是 json
- jquery.load(*json) 解析不已。求帮忙
- JSON,AJAX
- 2中,可是一直发生java.lang.NoClassDefFoundError: net/sf/json/
- json 转成 string解决办法
- json ,Map转json,全部分了
- jquery ajax+json(插件) 提交数据,让人捉摸不透的是:【部分中文显示问号】,该怎么解决
- json 序列化有错误怎么办
- JQUERY json 传值有关问题
- 获取 天候Api 返回的 json 数据
- MVC(Json) 出现提示上载
- MVC,linq,json,有关问题不知道如何描述,跪求
- json 序列化有关问题?当列名为可变数值时,如果序列化
- HttpWebRequest post json 数据,接受应该怎么获取啊
- 在于json。超级郁闷。上载了Newtonsoft.Json,可是没有JavaScriptArray属性,这是为什么呀
- 急MVC3 返回 Json 有关问题
- jquery +json +html 怎么做分页
- JSON.parse是那里定义的,小弟我在vs2008里js函数里调用了
- jqGrid json 不显示数据,该如何处理
- json 反序列化 为.net对象,该如何处理
- JQUERY AJAX JSON 有关问题 求大侠指点
- json 转成 Dataset 保存到数据库,该怎么处理