JavaScript 正则表达式验证登录实例

代码片段:


<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>qq登录模拟测试</title>
</head>
<body>
<form name="form1" action="#" method="post">
    <input type="text" placeholder="账号" name="username" ><br><br>
    <input type="password" placeholder="密码" name="password" id="pw">
	<input type="button" name="" id="btn" value="点击显示" />
	<br><br>
    <input name="Submit" type="button"  onClick="check()" value="登录"/>
</form>
</body>
<!--账号密码验证-->
<script type="text/javascript">
function check(){
/*非空*/
if(form1.username.value==""){
alert("账号不能为空");
form1.username.focus();
return false;
}

/*含非数字、首字母为0 /^[0-9]*$/*/
var number=/^(0|[1-9][0-9]*)$/; 
var objExp1=new RegExp(number); 
if(objExp1.test(form1.username.value)==false){
alert("账号不能含非数字和首字符为0");
form1.username.focus();
return false;
}

/*账号小于6位数*/
if(form1.username.value.length < 6){
alert("账号位数过小,请输入6-11位数字");
form1.username.focus();
return false;
}

/*账号大于11位数*/
if(form1.username.value.length > 11){
alert("账号位数过大,请输入6-11位数字");
form1.username.focus();
return false;
}

/*密码非空*/
if(form1.password.value==""){
alert("密码不能为空");
form1.password.focus();
return false;
}

/*密码含有非符号、字母、数字以外字*/
var illegal=/^[0-9a-zA-Z!~@#$%^&*()_+`\-={}:";'<>?,.\/]*$/g; 
var objExp2=new RegExp(illegal);
if(objExp2.test(form1.password.value)==false){
alert("密码含有非法字符");
form1.password.focus();
return false;
}

/*密码小于6位数*/
if(form1.password.value.length < 6){
alert("密码位数过小,请输入6-16位数字");
form1.password.focus();
return false;
}

/*密码大于16位数*/
if(form1.password.value.length > 16){
alert("密码位数过大,请输入6-16位数字");
form1.password.focus();
return false;
}

form1.submit();
}
</script>

<!--回显密码-->
<script type="text/javascript">
    window.onload=function(){
    var btn=document.getElementById("btn");
    var password=document.getElementById("pw")
    btn.onmousedown=function(){
        password.type="text"
     };
    btn.onmouseup=btn.onmouseout=function(){
        password.type="password"
     }
 }
 </script>
</html>

结果显示:

希望对你学习有帮助。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值