老师,用户名和密码不验证是什么原因?

老师,用户名和密码不验证是什么原因?

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
	<title>正则表达式-重复</title>
	<style type="text/css">
		.wrap{
			width: 1200px;
			height: auto;
			margin: auto auto;
			background-color: #eee;
			overflow: hidden;
		}
		.wrap .top{
			width: 100%;
			height: 30px;
			background-color: #0099CC;
			margin-left:0;
			padding: 0;
		}
		.wrap .top p{
			color: #fff;
			margin-left: 30px;
			line-height: 30px;
			margin:0;
			padding-left: 30px;
		}
		.wrap #regexp{
			width: 500px;
			margin: 50px auto;
			overflow: hidden;
		}
		.wrap #regexp .unify{
			color: #999;
			display: block;
			margin-top: 30px;
		}
		.wrap #regexp .uniform{
			width: 200px;
			height: 20px;
			resize: none;
			vertical-align:middle;
		}
		.wrap #regexp #button{
			width: 80px;
			height: 40px;
			border-radius: 5px;
			background-color: #006699;
			margin: 50px auto;
			margin-top: 80px;
			cursor:pointer;
			margin-left: 150px;
		}
		.wrap #regexp #button p{
			line-height: 40px;
			text-align: center;
			color: #fff;
		}
		.verification{
			 width: 280px;
			   color: red;
			   font-size: 12px;
			   text-align: left;
			   margin-bottom: 4px;
		}
	</style>
</head>
<body>
	<div class="wrap">
		<div class="top"><p>用户注册</p></div>
		<div id="regexp">
			<p class="unify">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;用户名:&nbsp;&nbsp;<input type = "text" class="uniform" id="username"></input><span class="verification"></span></p>

			<p class="unify">&nbsp;&nbsp;&nbsp;登录密码:&nbsp;&nbsp;<input type = "password" class="uniform" id="password"></input><span class="verification"></span></p>

			<p class="unify">&nbsp;&nbsp;&nbsp;确认密码:&nbsp;&nbsp;<input type = "password" class="uniform" id="confirmPassword"></input><span class="verification"></span></p>

			<p class="unify">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;姓名:&nbsp;&nbsp;<input type = "text" class="uniform" id="realName"></input><span class="verification"></span></p>

			<p class="unify">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;性别:&nbsp;&nbsp;<select class="uniform" id="sex">
				<option value="nan">男</option>
				<option value="nv">女</option>
			</select><span class = "verification"></span></p>

			<p class="unify">身份证号码:<input type = "text" class="uniform" id="idNumber"></input><span class="verification"></span></p>

			<p class="unify">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;邮箱:&nbsp;&nbsp;<input type = "text" class="uniform" id="email"></input><span class="verification"></span></p>

			<p class="unify">&nbsp;&nbsp;&nbsp;手机号码:&nbsp;&nbsp;<input type = "text" class="uniform" id="phone"></input><span class="verification"></span></p>

			<div id="button" ><p>提交</p></div>
		</div>
	</div>
	<script>
		var username = 		document.getElementById('username'),
			password = 		document.getElementById('password'),
			confirmPassword = document.getElementById('confirmPassword'),
			realName = 		document.getElementById('realName'),
			sex = 			document.getElementById('sex'),
			idNumber = 		document.getElementById('idNumber'),
			email = 		document.getElementById('email'),
			phone = 		document.getElementById('phone'),
			button = 		document.getElementById('button'),
			veri = 			document.getElementsByClassName("verification");
		var pattern = {
			username:/^[a-z]\w{6,20}$/,
			password:/^\S{6,16}$/,
			confirmPassword:/^\S{6,16}&/,
			realName:/^[\u4e00-\u9fa5]{2,4}$/,
			idNumber:/^[0-9]{15}$|^[0-9]{18}$|^[0-9]{17}X$|^[0-9]{16}$/,
			email:/(?:\w+\.)*\w+@(?:\w+\.)+[a-z]/i,
			phone:/^13\d{9}$|^147\d{9}$|^15[0,1,2,3,4,6,7,8,9]{1}\d{8}$|^182\d{8}$|^18[5-9]\d{8}$|^180\d{8}$/
		}
		var allElem = [];
		var flag = false,
			flag1 = false,
			flag2 = false,
			flag3 = false,
			flag4 = false,
			flag5 = false,
			flag6 = false,
			flag7 = false;
		username.onblur = function(){
			if(username.value.match(pattern.username)){
				veri[0].innerHTML = "OK";
				flag = true;
			}else{
				veri[0].innerHTML = "请输入6-20位字母,数字下划线";
				flag = false;
			}
		}
		password.onblur = function(){
			if(password.value.match(pattern.password)){
				veri[1].innerHTML = "OK";
				flag1 = true;
			}else{
				veri[1].innerHTML = "请设置密码";
				flag1 = false;
			}
		}
		confirmPassword.onblur = function(){
			if(password.value == confirmPassword.value){
				veri[2].innerHTML = "OK";
				flag2 = true;
			}else{
				veri[2].innerHTML = "两次输入的密码不一致";
				flag2 = false;
			}
		}
		realName.onblur = function(){
			if(realName.value.match(pattern.realName)){
				veri[3].innerHTML = "OK";
				flag3 = true;
			}else{
				veri[3].innerHTML = "请输入2-4位汉字";
				flag3 = false;
			}
		}
		idNumber.onblur = function(){
			if(idNumber.value.match(pattern.idNumber)){
				veri[5].innerHTML = "OK";
				flag4 = true;
			}else{
				veri[5].innerHTML = "请输入正确的身份证号码";
				flag4 = false;
			}
		}
		email.onblur = function(){
			if(email.value.match(pattern.email)){
				veri[6].innerHTML = "OK";
				flag5 = true;
			}else{
				veri[6].innerHTML = "请输入正确的邮箱地址";
				flag5 = false;
			}
		}
		phone.onblur = function(){
			if(phone.value.match(pattern.phone)){
				veri[7].innerHTML = "OK";
				flag5 = true;
			}else{
				veri[7].innerHTML = "请输入正确的手机号码";
				flag5 = false;
			}
		}
		button.addEventListener("click",function(){
				if(flag == true && flag1 == true && flag2 == true && flag3 == true && flag4 == true && flag5 == true && flag6 == true){
					alert("成功");
				}else{
					alert("验证失败");
				}
			});
	</script>
</body>
</html>

麻烦老师再检查一下哪里还有错误

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学你好,如下,手机这里应该是flag6,不是flag5。

http://img1.sycdn.imooc.com//climg/5e71ff5909ddb66d05670240.jpg

祝学习愉快~

好帮手慕糖 2020-03-18 15:50:43

同学你好,关于你的问题,回答如下:

1、“用户名”这里前面已经匹配了一个字母,所以这里是5-19就可以了。例:

http://img1.sycdn.imooc.com//climg/5e71d28609436f8003790063.jpg

2、密码如下,老师这里测试是验证的哦。

http://img1.sycdn.imooc.com//climg/5e71d2c109a0667203610071.jpg

祝学习愉快~

  • 提问者 Redamancy_Y6 #1
    老师,我所有输入框验证成功的时候,为什么点击提交显示验证失败,哪里出了问题?
    2020-03-18 15:57:12
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
2.组件化网页开发
  • 参与学习           人
  • 提交作业       1121    份
  • 解答问题       14456    个

本阶段在运用JS实现动态网页开发的基础上,带你深入理解企业开发核心思想,完成一个企业级网页的开发,体验前端工程师的成就感。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师