jquery问题 $.ajax() success:不执行,直接是第四张图的输出页面!为什么!我想alert()
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jquery问题 $.ajax() success:不执行,直接是第四张图的输出页面!为什么!我想alert()相关的知识,希望对你有一定的参考价值。
参考技术A 直接输出,只能说明,不是异步访问了,你页面已经刷新了,返回内容直接作为输出,我遇到过这种情况,具体原因也说不上来,建议你debug错误,并且把ajax参数写全一些,比如datatype,看你写的应该是json类型的,以及error参数,方便查看错误 参考技术B $.ajax(url: ":U(User/changepassword)",
success: complete,
dataType: "json"
);
请求结果是json字符串没有转换成json对象,需要加上 dataType 参数 或者使用
JSON.parse(text[, reviver])转换成json object
jquery通过ajax方法获取json数据不执行success
1.jquery通过ajax方法获取json数据不执行success回调
问题描述:jquery通过ajax方法获取json数据不执行success回调方法
问题原因:json格式存在问题或不符合标准写法,导致总是执行error回调方法
解决方案:使json格式务必符合下述3个标准写法:
1)键名称:用双引号括起;
2)字符串:用双引号括起;
3)数字,布尔值不需要使用双引号括起 ;
注意:一定是双括号!
2.jQuery中ajax使用json数据类型总是跳过success执行error语句
alert(XMLHttpRequest.responseText);
alert(XMLHttpRequest.status);
alert(XMLHttpRequest.readyState);
alert(textStatus); // parser error;
}
就明白错误信息了;
3.$.ajax()中的URL跨域时,总是不执行success,老进入error
1)我加上ServletActionContext.getResponse().setHeader("Access-Control-Allow-Origin", "*");
解决跨域问题,就顺利进入success了
2)dataType:"json",
去掉 看能进success 不 。
dataType 是预期服务器返回过来的信息类型 。
原因:返回的数据类型一定要符合定义的数据类型。即如果你定义的 dataType 是 json 类型的,那么返回来的数据一定是 json 才可以,平且不然就会执行 error 里的程序块儿。
(1) 同时需要特别的注意返回的JSON数据是否是严格的JSON格式.
(2) 也应该严重关切当后台返回的是一个List 数据(List当中的数据是Json格式)时,有没脏数据即不是严格的JSON格式。
以上是关于jquery问题 $.ajax() success:不执行,直接是第四张图的输出页面!为什么!我想alert()的主要内容,如果未能解决你的问题,请参考以下文章
jquery通过ajax方法获取json数据不执行success回调
在 jQuery AJAX Success 中从 MySql 获取特定响应
jquery ajax请求成功,但是进入了success,但是返回的数据data为空