前端 js 发送验证码
2024-10-19 03:23:42
1. 代码如下:
<html>
<head>
<meta charset="utf-8">
<title></title>
<script src="jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
/*-------------------------------------------*/
var InterValObj; //timer变量,控制时间
var count = ; //间隔函数,1秒执行
var curCount;//当前剩余秒数
var code = ""; //验证码
var codeLength = ;//验证码长度
function sendMessage() {
curCount = count;
var phone=$("#phone").val();//手机号码
if(phone != ""){
//产生验证码
for (var i = ; i < codeLength; i++) {
code += parseInt(Math.random() * ).toString();
}
//设置button效果,开始计时
$("#btnSendCode").attr("disabled", "true");
$("#btnSendCode").val("请在" + curCount + "秒内输入验证码");
InterValObj = window.setInterval(SetRemainTime, ); //启动计时器,1秒执行一次
//向后台发送处理数据
$.ajax({
type: "POST", //用POST方式传输
dataType: "text", //数据格式:JSON
url: 'Login.ashx', //目标地址
data: "phone=" + phone + "&code=" + code,
error: function (XMLHttpRequest, textStatus, errorThrown) { },
success: function (msg){ }
});
}else{
alert("手机号码不能为空!");
}
}
//timer处理函数
function SetRemainTime() {
if (curCount == ) {
window.clearInterval(InterValObj);//停止计时器
$("#btnSendCode").removeAttr("disabled");//启用按钮
$("#btnSendCode").val("重新发送验证码");
code = ""; //清除验证码。如果不清除,过时间后,输入收到的验证码依然有效
}
else {
curCount--;
$("#btnSendCode").val("请在" + curCount + "秒内输入验证码");
}
}
</script>
</head>
<body>
<form>
<div>
<font color="red">*</font>手机号码:
</div>
<div>
<input type="text" id="phone" name="phone"/>
</div>
<div>
<font color="red">*</font>验证码:
</div>
<div>
<input type="text" id="checkCode" name="checkCode" size=""/>
<input id="btnSendCode" type="button" value="发送验证码" onclick="sendMessage()" />
</div>
<div>
<input type="submit" value="登陆"/>
</div>
</form>
</body>
</html>
最新文章
- React Native填坑之旅--布局篇
- OpenGL2.0及以上版本中glm,glut,glew,glfw,mesa等部件的关系
- URAL-1997 Those are not the droids you&#39;re looking for 二分匹配
- PAT (Basic Level) 1004. 成绩排名 (20)
- jquery插件-省市联动
- Deep Learning for Natural Language Processing1
- apicloud教程3 (转载)
- 1000以内完全数(完美数)获取实现---基于python
- [NOI 2001]炮兵阵地
- c# 存储过程取output 值
- 翻译:XtraDB/InnoDB中的AUTO_INCREMENT处理方式(已提交到MariaDB官方手册)
- AS安装过程中出现的错误
- Android创建自定义的布局和控件
- 自学Linux Shell15.2-作业控制命令(jobs/bg/nice/renice/at/atp/atrm/crontab)
- hdu 1027 输出第m个全排列(next_permutation)
- 2.Android硬件访问服务编写系统代码【转】
- go下载安装
- Bug:src/lxml/lxml.etree.c:84:20: 致命错误:Python.h:没有那个文件或目录
- 壮哉大微软,.Net人的春天来了,你准备好了嘛!
- 实习day2:@2X图片,git,coding.net,
热门文章
- strtol 函数用法
- Asp.Net Core 项目搭建 基础配置 和MySql 的使用
- shell中测试命变量是否已经定义
- Web Analytics 2.0 中文翻译 [ 系列索引 ]
- 监控阮一峰老师的blog
- Git for Windows - The Program can&#39;t start because libiconv2.dll is missing
- linux下重启apache
- jsContext全局函数调用与对象函数调用、evaluateScript
- 在eclipse中遇到cannot open output file xxx.exe: Permission denied 的解决办法
- 【转载】使用Pandas创建数据透视表