前端实现登录注册框手机号与验证码校验逻辑
作者:工具松鼠时间:2026-10-23 01:43:26浏览:243
本文介绍如何在Web前端实现登录注册场景下的手机号格式校验与验证码发送逻辑。通过正则表达式验证十一位手机号码有效性,结合jQuery监听按钮点击事件,在验证通过后触发弹出层提示。同时实现了发送验证码后的倒计时功能及错误信息动态显示,确保用户交互的准确性与体验流畅。
手机号与验证码校验前端实现
在多种开发场景中,都需要对手机号格式及验证码发送进行严格校验,具体实现方案如下所示。
<div>
<input type="text" name="phonenumber" placeholder="请输入您的手机号码" />
<input type="text" name="verify" placeholder="请输入验证码" /><input type="button" value="发送验证码" class="verify_code" />
<input type="button" name="btn" placeholder="立即领取" class="btn" />
</div>
<!--弹出层-->
<div class="layer" style="display:none">
<p>领取成功</p>
<img src="img/close-btn.png" class="close-btn">
</div>
$(document).ready(function(){
//点击关闭按钮关闭弹出层
$(".close-btn").click(function(){
$("layer").hide();
});
//只有再手机号和验证码验证为有效后,点击领取按钮跳出弹出层事件才生效
$('[name=btn]').click(function(){
if(!validate()){
return false;
}
$(".layer").show();
});
//验证
function validate(){
//正则表达式,十一位数字的电话号码
var phoneReg = /^(0|86|17951)?(13[0-9]|15[012356789]|17[0-9]|18[0-9]|14[57])[0-9]{8}$/;
//如果手机号码输入为空,则再输入框后插入错误信息
if($('[name=phonenumber]').val==''){
$('[name=phonenumber]').after(errMsg('手机号码不能为空!'));
return false;
}
//验证输入的电话号码是否是11位数字
if(!phoneReg.test($('[name=phonenumber]').val())){
$('[name=phonenumber]').after(errMsg('请输入正确的手机号码!'));
return false;
}
//验证码不为空验证
if($('[name=verify]').val==''){
$('[name=verify]').after(errMsg('验证码不能为空!'));
return false;
}
$('.error').remove();
return true;}
//点击发送验证码按钮,进行倒计时
$('.verify_code').on('',function(){
if(!this.b){
setTimer();
this.b=true;
}
})
//倒计时
function setTimer(){
var time=60;
var timers=setInterval(function(){
time--;
if(time <= 0){
time=0;
console.log(time);
$('.verify_code').eq(0)[0].b=false;
$('.verify_code').val('获取验证码');
clearInterval(timers);
return false;
}
$('.verify_code).val( time+ '秒后重新获取');
},1000)
}
//错误信息显示
function errMsg(html){
$('.error').remove();
var str='<div class="error">*'+html+'</div>';
return str;
}
});
上述内容即为本文的核心代码与逻辑说明,希望能为读者的前端开发工作提供参考与帮助,欢迎持续关注本站获取更多技术资源。
作者最新文章
JS代码在线格式化工具推荐:无需安装快速美化
2026-11-05 17:17:49
WebStorm内置JS代码格式化功能怎么用
2026-11-05 10:10:47
在线JS代码格式化与混淆压缩工具推荐及使用指南
2026-11-03 20:31:53
CodePen、JSFiddle与RunJS对比:哪款在线JavaScript编辑器更好用
2026-11-03 18:52:45
无需安装环境,5款主流JavaScript在线运行工具推荐
2026-11-03 18:23:26
