进一步简化封装
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
form{
width:300px;
background:pink;
text-align: center;
padding:30px 0;
margin:100px auto;
}
</style>
</head>
<body>
<form id="form">
<p>
<input type="text" name="name" id="username" placeholder="请输入账户名">
</p>
<span></span>
<p>
<input type="text" name="chinaName" id="chinaName" placeholder="请输入中文名">
</p>
<span></span>
<p>
<input type="email" name="eamil" id="email" placeholder="请输入邮箱">
</p>
<span></span>
<p>
<input type="submit" value="注册" id="submit">
</p>
</form>
<script type="text/javascript">
var spans=document.getElementsByTagName("span");
var username=document.getElementById("username");
var chinaName=document.getElementById("chinaName");
var email=document.getElementById("email");
var submit=document.getElementById("submit");
var input1=false;
var input2=false;
var input3=false;
var len=spans.length;
console.log(len)
//验证正则
var reg={
'zhanghu':/^\w{6,18}$/,
'xingming':/^[\u4e00-\u9fa5]{2,5}$/,
'email':/^\w+@\w+\.[a-zA-Z_]{2,4}$/,
}
username.onfocus=function(){
spans[0].innerHTML="请输入账户名";
spans[0].style.color="green";
}
username.onblur=function(){
if(this.value==""){
spans[0].innerHTML="账号不能为空";
spans[0].style.color="red";
}else{
if(!reg.zhanghu.exec(username.value)){
spans[0].innerHTML="请输入正确的账户名";
spans[0].style.color="red";
}else{
spans[0].innerHTML="账户正确";
spans[0].style.color="green";
input1=true;
}
}
}
chinaName.onfocus=function(){
spans[1].innerHTML="请输入中文名";
spans[1].style.color="green";
}
chinaName.onblur=function(){
if(this.value==""){
spans[1].innerHTML="名字不能为空";
spans[1].style.color="red";
}else{
if(!reg.xingming.exec(chinaName.value)){
spans[1].innerHTML="请输入正确的名字";
spans[1].style.color="red";
}else{
spans[1].innerHTML="名字正确";
spans[1].style.color="green";
input2=true;
}
}
}
email.onfocus=function(){
spans[2].innerHTML="请输入邮箱";
spans[2].style.color="green";
}
email.onblur=function(){
if(this.value==""){
spans[2].innerHTML="邮箱不能为空";
spans[2].style.color="red";
}else{
if(!reg.email.exec(email.value)){
spans[2].innerHTML="请输入正确的邮箱";
spans[2].style.color="red";
}else{
spans[2].innerHTML="邮箱正确";
spans[2].style.color="green";
input3=true;
}
}
}
submit.onclick=function(){
if(input1==false || input2==false || input3==false){
alert("注册失败");
}else{
alert("注册成功");
}
}
</script>
</body>
</html>
我封装了正则表达式,下一步应该怎样简化封装代码呢 给个思路
正在回答 回答被采纳积分+1
- 参与学习 人
- 提交作业 467 份
- 解答问题 4826 个
本路径带你通过系统学习HTML5、JavaScript、jQuery的进阶知识,不仅如此,还会学习如何利用组件化的思想来开发网页,知识点+案例,使得所学可以更好的得到实践。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星