jquery ajax的success回调函数中实现按钮置灰倒计时


Posted in Javascript onNovember 19, 2013

主要是实现异步手机发送短信成功之后在ajax的success回调中实现将发送按钮置灰并倒计时,刚开始一直报js错误,问题可能出在于调用ajax之后this被更新,随意在这之前先把this对象赋给一个变量就没问题

按钮倒计时代码

var wait = 60; 
get_code_time = function (o) { 
if (wait == 0) { 
o.removeAttribute("disabled"); 
o.value = "免费获取验证码"; 
wait = 60; 
} else { 
o.setAttribute("disabled", true); 
o.value = "(" + wait + ")秒后重新获取"; 
wait--; 
setTimeout(function() { 
get_code_time(o) 
}, 1000) 
} 
}

获取手机短信之后调用get_code_time函数代码
//重新获取验证码 
$('#codeagain').click(function() { 
var o = this; 
$.ajax({ 
url:"Tea_sendCode.action?jsoncallback=?", 
type:"post", 
data: {accountId:accountId}, 
dataType: "json", 
success: function (data) { 
if(data.status == 1 && data.code == 200){ 
alert("验证码已发送至您的手机"); 
get_code_time(o); 
} else { if(data.msg != ""){ 
alert(data.msg); 
} else { 
alert("短信验证码发送失败"); 
} 
} 
}, 
error: function (data) { 
if(data.status == 0) { 
alert(data.msg); 
} else { 
alert("短信验证码发送失败"); 
} 
} 
}); 
});
Javascript 相关文章推荐
javascript两段代码,两个小技巧
Feb 04 Javascript
JS获取页面input控件中所有text控件并追加样式属性
Feb 25 Javascript
JavaScript黑洞数字之运算路线查找算法(递归算法)实例
Jan 28 Javascript
AngularJS 最常用的功能汇总
Feb 17 Javascript
jQuery和hwSlider实现内容响应式可触控滑动切换效果附源码下载(二)
Jun 22 Javascript
详解vue组件开发脚手架
Jun 15 Javascript
react实现换肤功能的示例代码
Aug 14 Javascript
JS获取月的第几周和年的第几周实例代码
Dec 05 Javascript
详解如何使用微信小程序云函数发送短信验证码
Mar 13 Javascript
详解如何写出一个利于扩展的vue路由配置
May 16 Javascript
vue中 this.$set的用法详解
Sep 06 Javascript
jQuery带控制按钮轮播图插件
Jul 31 jQuery
详解jQuery插件开发中的extend方法
Nov 19 #Javascript
Js 导出table内容到Excel的简单实例
Nov 19 #Javascript
js文本框输入点回车触发确定兼容IE、FF等
Nov 19 #Javascript
jquery.autocomplete修改实现键盘上下键自动填充示例
Nov 19 #Javascript
JS注释所产生的bug 即使注释也会执行
Nov 19 #Javascript
js计算两个时间之间天数差的实例代码
Nov 19 #Javascript
JS获取当前网址、主机地址项目根路径
Nov 19 #Javascript
You might like
php实现网站插件机制的方法
2009/11/10 PHP
如何用phpmyadmin设置mysql数据库用户的权限
2012/01/09 PHP
PHP使用curl函数发送Post请求的注意事项
2016/11/26 PHP
phpinfo()中Loaded Configuration File(none)的解决方法
2017/01/16 PHP
PHP利用Socket获取网站的SSL证书与公钥
2017/06/18 PHP
PHP实践教程之过滤、验证、转义与密码详解
2017/07/24 PHP
PHP排序算法之基数排序(Radix Sort)实例详解
2018/04/21 PHP
基于PHP的微信公众号的开发流程详解
2020/08/07 PHP
javascript new一个对象的实质
2010/01/07 Javascript
JavaScript 判断判断某个对象是Object还是一个Array
2010/01/28 Javascript
jQuery的12招常用技巧分享
2011/08/08 Javascript
onkeyup,onkeydown和onkeypress的区别介绍
2013/10/21 Javascript
利用javascript实现web页面中指定区域打印
2013/10/30 Javascript
jquery表单验证插件(jquery.validate.js)的3种使用方式
2015/03/28 Javascript
深入理解JQuery中的事件与动画
2016/05/18 Javascript
深入理解JS addLoadEvent函数
2016/05/20 Javascript
3kb jQuery代码搞定各种树形选择的实现方法
2016/06/10 Javascript
js跨域资源共享 基础篇
2016/07/02 Javascript
Express+Nodejs 下的登录拦截实现代码
2017/07/01 NodeJs
Vue2.0基于vue-cli+webpack同级组件之间的通信教程(推荐)
2017/09/14 Javascript
H5实现手机拍照和选择上传功能
2019/12/18 Javascript
使用 UniApp 实现小程序的微信登录功能
2020/06/09 Javascript
Python实现的数据结构与算法之链表详解
2015/04/22 Python
Python基于socket实现简单的即时通讯功能示例
2018/01/16 Python
详解PyCharm配置Anaconda的艰难心路历程
2018/08/13 Python
python重试装饰器的简单实现方法
2019/01/31 Python
python 公共方法汇总解析
2019/09/16 Python
Python实现微信好友的数据分析
2019/12/16 Python
基于django和dropzone.js实现上传文件
2020/11/24 Python
2019年.net常见面试问题
2012/02/12 面试题
法人代表委托书
2014/04/04 职场文书
爱心倡议书范文
2014/05/12 职场文书
小学优秀班主任事迹材料
2014/05/17 职场文书
授权委托书
2014/07/31 职场文书
Python数据分析之绘图和可视化详解
2021/06/02 Python
浅析Python中的随机采样和概率分布
2021/12/06 Python