使用JS、Html、Css实现一个注册页面

实现以下功能

鼠标焦点不在输入框上的时候,检核之前的输入框内容是否合格,不合格,在下方输出警告语句

 

点击注册按钮时,检核所有数据是否合格,合格则打包发送给服务器(未完成的功能),不合格则输出警告语句

 

 

 

代码部分如下

Html

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title>易买网注册页面</title>
		<link rel="stylesheet" type="text/css" href="css/work.css"/>
	</head>
	<body class="container">
		<!-- 这是一个表格 -->
		<table class="table_list">
			<!-- 表格第一行 -->
			<tr >
				<td></td>
				<td class="table_title">
					<span>注册</span>
					<span>已有账号,<a href=""> 我要登录</a></span>
				</td>
			</tr>
			
			
			
			<!-- 表格第二行 -->
			<tr>
				<td>
					<span>
						登录用户名
					</span>
				</td>
				<td>
					<span>
						<input type="text" id="username" class="i_username" onfocus="focusUsername()" onblur="blurUsername()" />
					</span>
				</td>
				
			</tr>
			<tr>
				<td></td>
				<td class="check_result" id="checkUsername" ></td>
			</tr>
			
			
			
			<!-- 表格第二行 -->
			<tr>
				<td>
					<span>
						输入密码
					</span>
				</td>
				<td>
					<span>
						<input type="password" id="password" class="i_password" onfocus="focusPassword()" onblur="blurPassword()"/>
					</span>
				</td>
			</tr>
			
			<tr>
				<td></td>
				<td id="checkPassword" class="check_result"></td>
			</tr>
			
			
			
			<!-- 表格第三行 -->
			<tr>
				<td>
					<span>
						确认密码
					</span>
				</td>
				<td>
					<span>
						<input type="password" id="rePassword" class="i_rePassword" onfocus="focusRePassword()" onblur="blurRePassword()"/>
					</span>
				</td>
				
			</tr>
			
			<tr>
				<td></td>
				<td id="checkRePassword" class="check_result"></td>
			</tr>
			
			
			
			<!-- 表格第四行 -->
			<tr>
				<td>
					<span>
						真实姓名
					</span>
				</td>
				<td>
					<span>
						<input type="text" id="realName" class="i_realName" onfocus="focusRealName()" onblur="blurRealName()"/>
					</span>
				</td>
			</tr>
			
			<tr>
				<td></td>
				<td id="checkRealName" class="check_result"></td>
			</tr>
			
			
			
			<!-- 表格第五行 -->
			<tr>
				<td>
					<span>性别</span>
				</td>
				<td>
						<label for="male">男</label>
						<input type="radio" name="sex" id="male" />
						<label for="female">女</label>
						<input type="radio" name="sex" id="female" />
				</td>
			</tr>
			
			<tr>
				<td></td>
				<td id=""></td>
			</tr>
			
			
			
			
			<!-- 表格第六行 -->
			<tr>
				<td>
					<span>
						身份证号码
					</span>
				</td>
				<td>
					<span>
						<input type="text" id="idCode" class="i_idCode" onfocus="focusIdCode()" onblur="blurIdCode()"/>
					</span>
				</td>
				
			</tr>
			
			<tr>
				<td></td>
				<td id="checkIdCode" class="check_result"></td>
			</tr>
			
			
			
			<!-- 表格第七行 -->
			<tr>
				<td>
					<span>邮箱</span>
				</td>
				<td>
					<span>
						<input type="text" id="email" class="i_email" onfocus="focusEmail()" onblur="blurEmail()"/>
					</span>
				</td>
				
			</tr>
			
			<tr>
				<td></td>
				<td id="checkEmail" class="check_result"></td>
			</tr>
			
			
			
			<!-- 表格第八行 -->
			<tr>
				<td>
					<span>手机号码</span>
				</td>
				<td>
					<span>
						<input type="text" id="mobile" class="i_mobile" onfocus="focusMobile()" onblur="blurMobile()"/>
					</span>
				</td>
			</tr>
			
			<tr>
				<td></td>
				<td id="checkMobile" class="check_result"></td>
			</tr>
			
			
			
			<!-- 表格第九行注册 -->
			<tr>
				<td></td>
				<td>
					<input type="button" class="buton" id="" value="立即注册" onclick="regist()"/>
				</td>
			</tr>
			
			<tr>
				<td></td>
				<td id="regist" class="check_result" ></td>
			</tr>
			
		</table>
	</body>
</html>
<script src="js/work.js" type="text/javascript" charset="utf-8"></script>

Css

/* 容器的类选择器 */
.container{
	background-color: #eaeaea;
	
}
/* 表标题的类选择器 */
.table_title{
	display: flex;
	justify-content: space-around;
}
/* 选中表标题的span子元素 */
.table_title span{
	/* 左对齐 */
	text-align: left;
}
/* 选中表标题的超链接子元素 */
.table_title a{
	color: #FF0064;
	text-decoration: none;
	margin-left: 5px;
}
/* 选中表身体 */
.table_list{
	margin: 100px auto;
	
}
/* 按钮 */
.buton{
	width: 300px;
	height: 30px;
	background-color: #ff0064;
	color: white;
	font-size: 18px;
	font-weight: bold;
	
}

.buton:hover{
	background-color: purple;
	color: red;
}
/* 表list 的子元素 span */
.table_list span{
	display: inline-block;
	font-size: 18px;
	width: 100%;
	text-align: right;
	font-size: 14px;
	color:#8B8989 ;
	
}
.table_list td{
	padding: 5px;
}

.i_username,.i_password,.i_rePassword,.i_realName,.i_idCode,.i_email,.i_mobile{
	
	width: 300px;
	height: 35px;
	border: 1px solid #EAEAEA;
	padding-left: 15px;
	/* 不重复 */
	background-repeat: no-repeat;
	background-color: white;
	background-position: 270px center;
}
/* 设置背景图片*/

.i_username{
	background-image: url(../img/用户名.png);
}

.i_password{
	background-image: url(../img/密码.png);
}

.i_rePassword{
	background-image: url(../img/确认密码.png);
}

.i_realName{
	background-image: url(../img/真实姓名.png);
}

.i_idCode{
	background-image: url(../img/身份证.png);
}

.i_email{
	
	background-image: url(../img/邮箱.png);
}

.i_mobile{
	background-image: url(../img/手机号码.png);
	
}
.check_result{
	color: red;
	text-align: left;
}

 

JS

// 当用户名得到焦点的时候,将checkUsername置空
function focusUsername(){
	document.getElementById("checkUsername").innerText = "";
}
//当用户名失去焦点的时候,输出
function blurUsername(){
	//判断用户名是否为空
	if(document.getElementById("username").value == ""){
		// 若为空,在下方的td中输出
		document.getElementById("checkUsername").innerText = "用户名不能为空!";
		return false;
	}
	return true;
}
// 当密码得到焦点的时候,将checkPassword置空
function focusPassword(){
	
	document.getElementById("checkPassword").innerText = "";
}
// 当密码框失去焦点的时候,进行判断,若不合格,输出语句
function blurPassword(){
	//对密码的长度金进行判断
	if(document.getElementById("password").value.length<6){
		//通过checkPassword的innerText属性输出值
		document.getElementById("checkPassword").innerText = "密码长度不能小于六位";
		return false;
	}
	return true;
}
// 当确认密码得到焦点的时候,将checkRePassword置空
function focusRePassword(){
	document.getElementById("checkRePassword").innerText = "";
}
// 当确认密码框失去焦点的时候,进行判断,若不合格,输出语句
function blurRePassword(){
	// 判断rePassword和password的值是否相等
	if(document.getElementById("rePassword").value!=document.getElementById("password").value){
		//通过checkRePassword的innerText属性输出值
		document.getElementById("checkRePassword").innerText = "两次密码不一致";
		return false;
	}
	return true;
}
// 当真实姓名得到焦点的时候,将checkRealName置空
function focusRealName(){
	document.getElementById("checkRealName").innerText = "";
}
// 当确认密码框失去焦点的时候,进行判断,若不合格,输出语句
function blurRealName(){
	// 定义一个正则表达式
	var reg =/^[\u4e00-\u9fa5]{2,4}$/;
	// 用正则表达式的test方法判断是否realName是否合格
	if(!reg.test(document.getElementById("realName").value)){
		document.getElementById("checkRealName").innerText = "姓名不符合规范!";
		return false;
	}
	return true;
}
// 当身份证得到焦点的时候,将checkIdCode置空
function focusIdCode(){
	document.getElementById("checkIdCode").innerText = "";
}
// 当身份证输入框失去焦点的时候,进行判断,若不合格,输出语句
function blurIdCode(){
	//定义正则表达式
	var reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
	//用正则表达式的test方法判断是否idcode是否合格
	if(!reg.test(document.getElementById("idCode").value)){
		//不合格输出语句
		document.getElementById("checkIdCode").innerText = "身份证格式不符合规范";
		return false;
	}
	return true;
}
// 当邮箱得到焦点的时候,将checkEmail置空
function focusEmail(){
	document.getElementById("checkEmail").innerText = "";
}
// 当邮箱输入框失去焦点的时候,进行判断,若不合格,输出语句
function blurEmail(){
	//定义正则表达式
	var reg = /^([a-zA-Z]|[0-9])(\w|\-)+@[a-zA-Z0-9]+\.([a-zA-Z]{2,4})$/;
	// 用正则表达式的test方法判断是否email是否合格
	if(!reg.test(document.getElementById("email").value)){
		// 不合格输出语句
		document.getElementById("checkEmail").innerText = "邮箱格式不符合规范";
		return false;
	}
	return true;
}
// 当手机得到焦点的时候,将checkMobile置空
function focusMobile(){
	document.getElementById("checkMobile").innerText = "";
}
// 当手机输入框失去焦点的时候,进行判断,若不合格,输出语句
function blurMobile(){
	//定义正则表达式
	var reg = /^1(3[0-9]|4[5,7]|5[0,1,2,3,5,6,7,8,9]|6[2,5,6,7]|7[0,1,7,8]|8[0-9]|9[1,8,9])\d{8}$/;
	//用正则表达式的test方法判断是否mobile是否合格
	if(!reg.test(document.getElementById("mobile").value)){
		// 不通过 输出语句
		document.getElementById("checkMobile").innerText = "手机号码格式不符合规范";
		return false;
	}
	return true;
}


function regist(){
	if(blurUsername() & blurPassword() & blurRePassword() 
	& blurRealName() & blurIdCode() & blurEmail() & blurMobile()){
		console.log("所有数据成功通过验证");
	}else{
		document.getElementById("regist").innerText = "有数据未成功通过验证";
	}
}

 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值