ajax不执行success回调而是执行了error回调


Posted in Javascript onDecember 10, 2012

附上代码如下:
JScript code:

$.ajax({ 
type: "post", 
url: "jsp/loginManager.jsp", 
data: "name=" + $('#rname').attr('value') + "&pwd=" + $('#pwd').attr('value'), 
dataType: "text", 
success: function(data) { 
alert(data); 
} 
});

点击登陆,成功连接数据库并且查询到了值(在loginManager.jsp页面有用System.out.print()打印过查询到的值)。但success里的东西不执行。用过断点,当执行完dataType后,success直接跳出,里面的alert()不执行,这是为什么呢?
改了下代码,如下:
JScript code:
$.ajax({ 
type: "post", 
url: "jsp/loginManager.jsp", 
async: true, 
data: "name=" + $('#rname').attr('value') + "&pwd=" + $('#pwd').attr('value'), 
dataType: "text", 
success: function(data) { 
alert(data); 
}, 
error: function(e) { 
alert(e); 
} 
});

但是还是一样,没反应,只是把登陆页面刷新了!!!
针对上面只是把登录页面刷新了的问题,是a链接里有点小问题,原来我是a链接里面有href,开始,href=”",所以刷新了页面,刷新页面前进入了action,所以也获得了提交数据,但是还没来得及返回,就刷新了。改成href=”#”就ok了!正如:
<a href='#' onclick= ‘delMenuContent(cellvalue)>
还有一个原因是因为我用的是异步提交,没等验证成功的时候已经执行了按钮的提交事件,所以页面已经刷新,将其改成同步提交,按钮的提交事件必须等ajax验证结束后判断是否进行提交就可以解决这个问题了!

最近在看jQuery的API文档,在使用到jQuery的ajax时,如果指定了dataType为json,老是不执行success回调,而是执行了error回调函数,极度郁闷。后面改为1.2.6版本可以执行。

然后继续下载了几个jquery版本,如1.3.2,1.4.0的,指定dataType为json都不能执行success回调,只有小于1.3版本的才能执行success回调。

最后去jquery的网站找到了在线的api文档看了下,地址:http://api.jquery.com/jQuery.ajax/ ,发现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.)

原来是jquery1.4版本以后对json格式要求非常严格了,要满足json.org网站定义的格式才能执行success回调,否则都会出错,无法解析返回的json数据。说的是1.4+以上的,那为什么下载的1.3.2指定dataType为json时也不能执行success回调呢?

怪不得不执行,原来我返回的是{success:true,id:1} 这种不规则的字符串,不是严格的json格式,改成{"success":true,"id":"1"} 就可以正常执行success回调了。


JSON格式总结下,详细的去json.org 查看。

1)键名称:用双引号 括起

2)字符串:用使用双引号 括起

3)数字,布尔类型不需要 使用双引号 括起

Javascript 相关文章推荐
JQuery 选项卡效果(JS与HTML的分离)
Apr 01 Javascript
使用jquery中height()方法获取各种高度大全
Apr 02 Javascript
让checkbox不选中即将选中的checkbox不选中
Jul 11 Javascript
用JavaScript判断CSS浏览器类型前缀的两种方法
Oct 08 Javascript
使用jquery动态加载Js文件和Css文件
Oct 24 Javascript
解决JS无法调用Controller问题的方法
Dec 31 Javascript
iscroll碰到Select无法选择下拉刷新的解决办法
May 21 Javascript
jQuery EasyUI右键菜单实现关闭标签/选项卡
Oct 10 Javascript
详解React-Native全球化多语言切换工具库react-native-i18n
Nov 03 Javascript
如何以Angular的姿势打开Font-Awesome详解
Apr 22 Javascript
js中位运算的运用实例分析
Dec 11 Javascript
前端JavaScript大管家 package.json
Nov 02 Javascript
解决js正则匹配换行问题实现代码
Dec 10 #Javascript
解决jquery异步按一定的时间间隔刷新问题
Dec 10 #Javascript
怎样在JavaScript里写一个swing把数据插入数据库
Dec 10 #Javascript
js里怎么取select标签里的值并修改
Dec 10 #Javascript
如何将JS的变量值传递给ASP变量
Dec 10 #Javascript
用jquery实现点击栏目背景色改变
Dec 10 #Javascript
jquery应该如何来设置改变按钮input的onclick事件
Dec 10 #Javascript
You might like
分享PHP入门的学习方法
2007/01/02 PHP
php实现图片缩放功能类
2013/12/18 PHP
PHP中ID设置自增后不连续的原因分析及解决办法
2016/08/21 PHP
PHPUnit测试私有属性和方法功能示例
2018/06/12 PHP
基于jquery的bankInput银行卡账号格式化
2012/08/22 Javascript
用jquery中插件dialog实现弹框效果实例代码
2013/11/15 Javascript
js模仿hover的具体实现代码
2013/12/30 Javascript
javascript客户端遍历控件与获取父容器对象示例代码
2014/01/06 Javascript
ES6新特性之数组、Math和扩展操作符用法示例
2017/04/01 Javascript
微信小程序的分类页面制作
2017/06/27 Javascript
利用Ionic2 + angular4实现一个地区选择组件
2017/07/27 Javascript
vue中使用cropperjs的方法
2018/03/01 Javascript
使用 Jest 和 Supertest 进行接口端点测试实例详解
2020/04/25 Javascript
[41:17]完美世界DOTA2联赛PWL S3 access vs CPG 第二场 12.13
2020/12/17 DOTA
使用python解析xml成对应的html示例分享
2014/04/02 Python
django开发教程之利用缓存文件进行页面缓存的方法
2017/11/10 Python
tensorflow创建变量以及根据名称查找变量
2018/03/10 Python
Python实现合并excel表格的方法分析
2019/04/13 Python
基于Python数据分析之pandas统计分析
2020/03/03 Python
Django更新models数据库结构步骤
2020/04/01 Python
python多进程下的生产者和消费者模型
2020/05/07 Python
Python脚本实现监听服务器的思路代码详解
2020/05/28 Python
Python使用jupyter notebook查看ipynb文件过程解析
2020/06/02 Python
Python定义一个函数的方法
2020/06/15 Python
PyCharm Community安装与配置的详细教程
2020/11/24 Python
CSS3中的transform属性进行2D和3D变换的基本用法
2016/05/12 HTML / CSS
详解css position 5种不同的值的用法
2019/07/30 HTML / CSS
Under Armour澳大利亚官网:美国知名的高端功能性运动品牌
2018/02/22 全球购物
师范生自荐信
2013/10/27 职场文书
优秀大学生推荐信范文
2013/11/28 职场文书
人民教师的自我评价分享
2014/02/21 职场文书
群众路线查摆问题整改措施
2014/10/10 职场文书
小学五年级语文上册教学计划
2015/01/22 职场文书
2015年感恩父亲节活动策划方案
2015/05/05 职场文书
小学2016年“我们的节日·重阳节”活动总结
2016/04/01 职场文书
redis lua限流算法实现示例
2022/07/15 Redis