纯js实现重发验证码按钮倒数功能


Posted in Javascript onApril 21, 2015

代码一:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>无标题文档</title> 
<script type="text/javascript" src="js/jquery.js"></script> 
</head> 

<body> 
<input type="button" id="btn" value="免费获取验证码" onclick="settime(this)" /> 
<script type="text/javascript"> 
var countdown=60; 
function settime(val) { 
if (countdown == 0) { 
val.removeAttribute("disabled");  
val.value="免费获取验证码"; 
countdown = 60; 
} else { 
val.setAttribute("disabled", true); 
val.value="重新发送(" + countdown + ")"; 
countdown--; 
} 
setTimeout(function() { 
settime(val) 
},1000) 
} 
</script> 
</body> 
</html>

代码二:

注册的时候需要发送验证激活帐号的邮件,为了避免邮件的多次重复发送,所以可以在点击了发送后,设置button要过一段时间才能继续点击。下面是一个简单的例子:

<html> 
<head> 
<title>点击获取验证码按钮后按钮变灰,倒计时一段时间后又可重复点击</title> 
</head> 
<body> 
<input type="button" id="btn" value="免费获取验证码" /> 
<script type="text/javascript"> 
var wait=60; 
function time(o) { 
    if (wait == 0) { 
      o.removeAttribute("disabled");      
      o.value="免费获取验证码"; 
      wait = 60; 
    } else { 
      o.setAttribute("disabled", true); 
      o.value=wait+"秒后可以重新发送"; 
      wait--; 
      setTimeout(function() { 
        time(o) 
      }, 
      1000) 
    } 
  } 
document.getElementById("btn").onclick=function(){time(this);} 
</script> 
</body> 
</html>
Javascript 相关文章推荐
Javascript实现的常用算法(如冒泡、快速、鸽巢、奇偶等)
Apr 29 Javascript
javascript框架设计之种子模块
Jun 23 Javascript
玩转JavaScript OOP - 类的实现详解
Jun 08 Javascript
Javascript 实现微信分享(QQ、朋友圈、分享给朋友)
Oct 21 Javascript
微信小程序中的onLoad详解及简单实例
Apr 05 Javascript
详解vue项目的构建,打包,发布全过程
Nov 23 Javascript
Angular实现的简单查询天气预报功能示例
Dec 27 Javascript
关于vuejs中v-if和v-show的区别及v-show不起作用问题
Mar 26 Javascript
vue-cli2.9.3 详细教程
Apr 23 Javascript
详解使用jQuery.i18n.properties实现js国际化
May 04 jQuery
JavaScript时间与时间戳的转换操作实例分析
Dec 07 Javascript
vue-cropper插件实现图片截取上传组件封装
May 27 Vue.js
jQuery滚动条插件nanoscroller使用指南
Apr 21 #Javascript
jQuery验证插件validation使用指南
Apr 21 #Javascript
jQuery拖拽插件gridster使用指南
Apr 21 #Javascript
jQuery弹出层插件Lightbox_me使用指南
Apr 21 #Javascript
jQuery提示插件alertify使用指南
Apr 21 #Javascript
JS实现仿google、百度搜索框输入信息智能提示的实现方法
Apr 20 #Javascript
Jquery遍历Json数据的方法
Apr 20 #Javascript
You might like
详解PHP swoole process的使用方法
2017/08/26 PHP
IE下Ajax缓存问题的快速解决方法(get方式)
2014/01/09 Javascript
jquery实现网页查找功能示例分享
2014/02/12 Javascript
js判断url是否有效的两种方法
2014/03/04 Javascript
javascript操作字符串的原生方法
2014/12/22 Javascript
Javascript进制转换实例分析
2015/05/14 Javascript
JavaScript调用客户端Java程序的方法
2015/07/27 Javascript
微信小程序 登录实例详解
2017/01/16 Javascript
Node.js通过身份证号验证年龄、出生日期与性别方法示例
2017/03/09 Javascript
JS实现的自动打字效果示例
2017/03/10 Javascript
详解Node.js项目APM监控之New Relic
2017/05/12 Javascript
JavaScript基于扩展String实现替换字符串中index处字符的方法
2017/06/13 Javascript
js实现前端图片上传即时预览功能
2017/08/02 Javascript
使用ng-packagr打包Angular的方法示例
2018/09/21 Javascript
在webstorm开发微信小程序之使用阿里自定义字体图标的方法
2018/11/15 Javascript
深入koa-bodyparser原理解析
2019/01/16 Javascript
vue+element+Java实现批量删除功能
2019/04/08 Javascript
微信小程序12行js代码自己写个滑块功能(推荐)
2020/07/15 Javascript
javascript实现点击按钮切换轮播图功能
2020/09/23 Javascript
Pytorch之view及view_as使用详解
2019/12/31 Python
python求一个字符串的所有排列的实现方法
2020/02/04 Python
python numpy生成等差数列、等比数列的实例
2020/02/25 Python
Lulu Guinness露露·吉尼斯官网:红唇包
2019/02/03 全球购物
印尼网上商店:Alfacart.com
2019/03/11 全球购物
Java方面的关于数组和继承的笔面试题
2015/09/18 面试题
总裁秘书岗位职责
2013/12/04 职场文书
家长给小学生的评语
2014/01/30 职场文书
人民调解员培训方案
2014/06/05 职场文书
2014年团工作总结
2014/11/27 职场文书
2014年节能降耗工作总结
2014/12/11 职场文书
小学生差生评语
2014/12/29 职场文书
人事行政助理岗位职责
2015/04/11 职场文书
主持稿开场白
2015/06/01 职场文书
mysql批量新增和存储的方法实例
2021/04/07 MySQL
JavaScript中时间格式化新思路toLocaleString()
2021/11/07 Javascript
Python字符串格式化方式
2022/04/07 Python