HTML页面制作---信息的校验

1.HTML信息校验代码

<html>
	<head>
		<meta charset="utf-8">
		<title>Music Login Form</title>
		<!--css代码声明-->
		<style type="text/css">
			#showdiv{
				width: 530px;
				height: 520px;
				border: solid 2px grey;
				border-radius: 10px;
				margin: auto;
				margin-top: 10px;
				margin-left: 230px;
			}
			table{
				margin: auto;
				color: white;
				font-family: "Consolas";
				margin-top: 10px;
			}
			span{
				font-size: 13px;
			}
			#codeSpan{
				font-size: 20px;
			}
			body{
				background: url(img/backgroud.jpg);
				background-repeat: no-repeat;
				background-size: cover;
			}
			tr{
				height: 35px;
			}
			input[type=text]{
				border-radius: 10px;
			}
			input[type=password]{
				border-radius: 10px;
			}
			h3{
				color: white;
				font-family: "Brush Script MT";
				font-size: 30px;
			}
		</style>
		<!--js代码声明-->
		<script type="text/javascript">
		//验证码
			function creatCode(){
				//获得四位随机数
				var code=Math.floor(Math.random()*9000+1000);
				//获取span对象
				var span=document.getElementById("codeSpan");
				//把随机数赋值给span
				span.innerHTML=code;
			}
		//验证用户名
			function checkUname(){
				//获取用户信息
					var uname=document.getElementById("uname").value;
				//制定校验规则
					var reg=/^[a-zA-Z]{1,10}$/
				//获取span对象
					var span=document.getElementById("unameSpan");
				//开始校验
					if(uname=="" || uname==null){
						//得出校验结果
						span.innerHTML="*The user name cannot be empty";
						span.style.color="red";
						return false;
					}else if(reg.test(uname)){
						//得出校验结果
						span.innerHTML="*Legitimate user";
						span.style.color="green";
						return true;
					}else{
						//得出校验结果
						span.innerHTML="*Out of specification";
						span.style.color="red";
						return false;
					}	
			}
		//验证密码
			function checkPwd(){
				//获取用户密码
					var pwd=document.getElementById("pwd").value;
				//制定验证信息
					var reg=/^[a-z][\w]{5,7}$/
				//获取span对象
					var span=document.getElementById("pwdSpan");
				//得出校验结果
					if(pwd=="" || pwd==null){
						span.innerHTML="*The password cannot be empty";
						span.style.color="red";
						return false;
					}else if(reg.test(pwd)){
						span.innerHTML="*Legitimate password";
						span.style.color="green";
						return true;
					}else{
						span.innerHTML="*Out of specification";
						span.style.color="red";
						return false;
					}
					checkConfirm();
			}
		//验证确认密码
			function checkConfirm(){
				//获取第一次密码
					var pwd=document.getElementById("pwd").value;
				//获取确认密码
					var confirm=document.getElementById("confirm").value;
				//获取span对象
					var span=document.getElementById("conSpan");
				//开始校验
				if(confirm=="" || confirm==null){
					//得出校验结果
					span.innerHTML="*Password can not be empty"
					span.style.color="red";
					return false;
				}else if(confirm==pwd){
					//得出校验结果
					span.innerHTML="*Both consistent";
					span.style.color="green";
					return true;
				}else{
					//得出校验结果
					span.innerHTML="*Not the same";
					span.style.color="red";
					return false;
				}
			}
		//验证电话
			function checkTel(){
				return	checkField("num",/^1[3,4,5,7,8]\d{9}$/);
			}
		//验证邮箱
			function checkMail(){
				return	checkField("mail",/^[a-z0-9]+([._\\-]*[a-z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1,63}[a-z0-9]+$/);
			}
		/*------------------------封装--------------------------*/
			function checkField(id,reg){
				//获取用户信息
					var inp=document.getElementById(id);
					var va=inp.value;
					var alt=inp.alt;
				//获取span对象
					var span=document.getElementById(id+"Span");
				//得出验证结果
					if(va=="" || va==null){
						span.innerHTML="*The "+alt+" cannot be empty";
						span.style.color="red";
						return false;
					}else if(reg.test(va)){
						span.innerHTML="*Legitimate "+alt;
						span.style.color="green";
						return true;
					}else{
						span.innerHTML="*Out of specification";
						span.style.color="red";
						return false;
					}
			}
		 //验证籍贯
		 	function checkAddress(){
		 		//获取籍贯信息
		 			var choice=document.getElementById("address").value;
		 		//获取span对象
		 			var span=document.getElementById("addressSpan");
		 		//开始校验
		 			if(choice!=0){
		 				span.innerHTML="sucessed";
		 				span.style.color="green";
		 				return true;
		 			}else{
		 				span.innerHTML="please choice";
		 				span.style.color="red";
		 				return false;
		 			}
		 	}
		 //验证爱好
		 	function checkHobby(){
		 		//获取爱好信息
		 			var favs=document.getElementsByName("fav");
		 		//获取span对象
		 			var span=document.getElementById("favSpan");
		 		//开始校验
		 			for(var i=0;i<favs.length;i++){
		 				if(favs[i].checked){
		 					span.innerHTML="sucessed";
		 					span.style.color="green";
		 					return;
		 				}
		 			}
		 			span.innerHTML="Choose at least one";
		 			span.style.color="red";
		 			return false;
		 	}
		 //验证"self-introduction"
		 	function checkIntro(){
		 		//获取内容信息
		 			var intro=document.getElementById("intro").value;
		 		//获取span对象
		 			var span=document.getElementById("introSpan");
		 		//开始校验
		 				if( intro.length<=10){
		 				span.innerHTML="keep write";
		 				span.style.color="green";
		 			}else{
		 				span.innerHTML="More than words";
		 				span.style.color="red";
		 			}
		 	}
		 //验证码的校验
		 	function checkCode(){
		 		//获取验证码
		 			var codeSpan=document.getElementById("codeSpan");
		 		//获取输入的验证码
		 			var code=document.getElementById("code").value;
		 		//获取span对象
		 			var span=document.getElementById("showSpan");
		 			if(code=="" || code==null){
					//得出校验结果
					span.innerHTML="*code can not be empty"
					span.style.color="red";
					return false;
				}else if(code==codeSpan.innerHTML){
					//得出校验结果
					span.innerHTML="*Both consistent";
					span.style.color="green";
					return true;
				}else{
					//得出校验结果
					span.innerHTML="*Not the same";
					span.style.color="red";
					return false;
				}
			}
		 		
		 //"是否同意公司协议选项"与"立即注册一致"
		 	function checkAgree(){
		 		document.getElementById("sub").disabled=!document.getElementById("agree").checked;
		 	}
		 //填写完整信息后才能提交成功
		 	function checkSub(){
		 		checkUname();
		 		checkPwd();
		 		checkConfirm();
		 		checkTel();
		 		checkMail();
		 		checkAddress();
		 		checkHobby();
		 		checkCode();
		 		return checkUname()&&checkPwd()&&checkConfirm()&&checkTel()&&checkMail()&&checkAddress()&&checkHobby()&&checkCode();
		 	}
		</script>
	</head>
	<body onload="creatCode()">
		<h3 align="center">
				<span style="color: orange;font-size: 30px;">M</span>usic
				<span style="color: orange;font-size: 30px;">L</span>ogin
				<span style="color: orange;font-size: 30px;">F</span>orm
		</h3>
		<div id="showdiv">
			<form action="#" onsubmit="return checkSub()">
				<table>
					<tr >
						<td width="50px">Usename:</td>
						<td width="500px">
							<input type="text" name="uname" id="uname" value="" onblur="checkUname()"/><span id="unameSpan" >*Within ten words</span>
						</td>
					</tr>
					<tr >
						<td>Password:</td>
						<td >
							<input type="password" name="pwd" id="pwd" value="" onblur="checkPwd()"/><span id="pwdSpan"></span>
						</td>
					</tr>
					<tr >
						<td>Confirm:</td>
						<td >
							<input type="password" name="confirm" id="confirm" value="" onblur="checkConfirm()"/><span id="conSpan"></span>
						</td>
					</tr>
					<tr >
						<td>Tel:</td>
						<td >
							<input type="text" name="num" id="num" value="" alt="tel" onblur="checkTel()"/><span id="numSpan"></span>
						</td>
					</tr>
					<tr >
						<td>E-Mail:</td>
						<td >
							<input type="text" name="mail" id="mail" value="" alt="Mail" onblur="checkMail()"/><span id="mailSpan"></span>
						</td>
					</tr>
					<tr>
						<td>Gender:</td>
						<td >
							F<input type="radio" name="sex" id="" value="1" checked="checked"/>
							M<input type="radio" name="sex" id="" value="0" />
		
						</td>
					</tr>
					<tr>
						<td>Native Place:</td>
						<td >
							<select name="address" id="address" onchange="checkAddress()">
								<option value="0">--Choices--</option>
								<option value="1">北京</option>
								<option value="2">上海</option>
								<option value="3">广州</option>
								<option value="4">深圳</option>
								<option value="5">香港</option>
								<option value="5">南昌</option>
								<option value="6">赣州</option>
								<option value="7">瑞金</option>
								<option value="8">西安</option>
							</select><span id="addressSpan"></span>
						</td>
					</tr>
					<tr >
						<td>Hobby:</td>
						<td >
							<input type="checkbox" name="fav" id="" value="" onclick="checkHobby()"/>Game&nbsp;
							<input type="checkbox" name="fav" id="" value="" onclick="checkHobby()"/>Guitar
							<input type="checkbox" name="fav" id="" value="" onclick="checkHobby()"/>basketball
							<br />
							<input type="checkbox" name="fav" id="" value="" onclick="checkHobby()"/>Music
							<input type="checkbox" name="fav" id="" value="" onclick="checkHobby()"/>Movie&nbsp;
							<input type="checkbox" name="fav" id="" value="" onclick="checkHobby()"/>Running
							<span id="favSpan"></span>
						</td>
					</tr>
					<tr >
						<td>Self-introduction:</td>
						<td >
							<textarea name="intro" id="intro" rows="5" cols="30" onclick="checkIntro()"></textarea>
							<span id="introSpan"></span>
						</td>
					</tr>
					<tr >		
						<td>Identtifying code:</td>
						<td >
							<input type="text" name="code" id="code" value="" onblur="checkCode()"/>
							<span id="codeSpan" onclick="creatCode()" style="background: url(img/code.jpg.gif);color: black;"></span>
							<span id="showSpan"></span>
						</td>
					</tr>
					<tr >
						<td colspan="2" align="center">
							<input type="checkbox" name="" id="agree" value="1" onclick="checkAgree()"/><b>Do you agree the company agreement?</b>
						</td>
					</tr>
					<tr >
						<td colspan="2" align="center">
							<input type="submit" name="" id="sub" value="Register" disabled="disabled"/>
						</td>
					</tr>
				</table>
			</form>
		</div>
	</body>
</html>

2.可实现的功能

2.1 基本内容
1.展示整个页面,包括背景图,表格的样式,字体样式
2.每次输入的信息后正确input里span的值才会变“绿色”,“红色”表示不符合输入要求,提示用户重新输入
3.用户只有点击“是否同意公司协议”按钮“立即注册”按钮才能点击
4.若用户没按照要求填写内容,“立即注册”也会失效,也就是说不能提交form表单
2.2 页面展示
(1)下面是用户输入的信息全部全部正确时的结果,可以看到“绿色”提示,表明正确
在这里插入图片描述
(2)下面是用户没有完全填好信息或者完全没填信息时显示的效果,这两种情况下都提交不了form表单
在这里插入图片描述
(3) 制作过程资料
链接:https://pan.baidu.com/s/1I_gKfU1uknnrPn8-M5U8lg
提取码:g2ev

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

#HashMap#

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值