html表单验证邮箱表达式,Javascript正则表达式实现表单验证

今天我们通过实现用户注册页面验证来学习js当中的正则表达式的构造

1.题目:正则表达式实现用户注册页面验证 。

在各文本框中输入信息,在文本框失去焦点时,验证信息,如果输入的信息部满足要求,则提示信息输入有误。每个文本框的具体信息如下:

用户名:由英文字母、数字、下划线组成,长度为6-15个字符,并且以英文字母开头

密码:由英文字母和数字组成,长度6-15。

邮箱地址:包含@和.符号,且以.com或者.cn结尾.

手机号码:11位数字,且以1开头

出生日期:年份在1900-2019,以yyyy-mm-dd格式

7b2f4874b58382a25f8863f1e0ff9278.png

具体实现

2.定义$(elementId)函数根据id获取元素

function $(elementId){ //获取id为XXXX的元素

return document.getElementById(elementId);

}

3.定义验证用户名的函数

//用户名由英文字母和数字组成的4-16位字符,以字母开头

function checkUser(){

var user=$("user").value; //获取用户名输入框的值

var userId=$("user_prompt"); //获取用户名提示的元素

var reg=/^[a-zA-Z][a-zA-Z0-9]{3,15}$/;

if(!reg.test(user)){

userId.innerHTML="用户名不符合要求";

return false;

}

return true;

}

6de4dda38ed7402f1a8914af0396b490.png

4.定义验证密码函数

//密码由4-10位字符组成

function checkPwd(){

var pwd=$("pwd").value;

var pwdId=$("pwd_prompt");

var reg=/^[a-zA-Z0-9]{4,10}$/;

if(!reg.test(pwd)){

pwdId.innerHTML="密码长度必须在4-10之间";

return false;

}

return true;

}

6ec463df5bbb1283b5273f1b37ecc299.png

5.定义验证确认密码函数

function checkRepwd(){

var repwd=$("repwd").value;

var pwd=$("pwd").value;

var repwdId=$("repwd_prompt");

repwdId.innerHTML="";

if(pwd!=repwd){

repwdId.innerHTML="两次输入的密码不一致";

return false;

}

return true;

}

66ce74e11ee925e110ee60ecfcb47a8d.png

6.定义验证邮箱地址函数

//邮箱地址必须包含@和.,地址以.com或.cn借结束

function checkEmail(){

var email=$("email").value; //获取邮箱地址输入框的值

var email_prompt=$("email_prompt");

var reg=/^\w+@\w+\.(com)$|(cn)$/;

if(!reg.test( email)){

email_prompt.innerHTML="邮箱地址格式不正确";

return false;

}

return true;

}

351580abe7532e1defd67cb22a7b0459.png

7.定义验证手机号码函数

//手机号码为11位数字,且必须以1开头

function checkMobile(){

var mobile=$("mobile").value;

var mobileId=$("mobile_prompt");

var regMobile=/^1\d{10}$/;

if(!regMobile.test(mobile)){

mobileId.innerHTML="手机号码不正确,请重新输入";

return false;

}

return true;

}

0103f9e33e816793f42018631e62b856.png

8.定义验证出生日期

//出生日期年份在1900-2019之间,生日按1980-05-12或1988-05-04格式

function checkBirth(){

var birth=$("birth").value;

var birthId=$("birth_prompt");

var reg=/^((19\d{2})|(20[0-1]\d))-(0?[1-9]|1[0-2])-(0?[1-9]|[1-2]\d|3[0-1])$/;

if(!reg.test(birth)){

birthId.innerHTML="生日格式不正确,如1980-5-12或1988-05-04";

return false;

}

birthId.innerHTML="";

return true;

}

90a9b36e4a9e3ffca3729929ef61c9ca.png

举报/反馈

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值