日期:2014-05-17  浏览次数:20692 次

servlet+jquery1.4.2(ajax error?)
servert 返回josn类型数据,前台使用jqurey ajax访问这个servlet,但$.ajax的error回调函数却执行了,如下:
$.ajax({
type:"POST",
url: "servlet/Add",
dataType:"json",
data:{"a":"你好"},
error:function(i){alert("error:"+i.responseText)}//这里成功的打印了从后台返回的数据{'a':'hello'}
//如果在error回调方法中执行,alert(arguments[1]),输出parseerror,转换错误,设置了dataType:"json",应该不会出这个问题散??
});
以下是响应头信息
Server Apache-Coyote/1.1
Content-Type text/plain;charset=UTF-8
Transfer-Encoding chunked
Date Wed, 18 May 2011 15:34:05 GMT
servert:
response.setContentType("text/plain;charset=UTF-8");
request.setCharacterEncoding("UTF-8");
PrintWriter out = response.getWriter();
out.println("{'a':'hello'}")
求解???

jq用的是1.4.2,在公司也用的这个版本,应该没有bug。。

------解决方案--------------------
把dataType:"json"这句话去掉再试试,以前我也遇到过这个问题,不去设置dataType的类型,让dataType默认就好了。

------解决方案--------------------
探讨

把dataType:"json"这句话去掉再试试,以前我也遇到过这个问题,不去设置dataType的类型,让dataType默认就好了。