3-9编程练习,请老师帮忙修正或优化,Thanks♪(・ω・)ノ
来源:3-9 编程练习
lianhilda
2020-04-24 10:16:40
<!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;
// 用户名
username.onfocus=function(){
spans[0].innerHTML='请输入6-18位字母、数字或下划线';
}
username.onblur=function(){
var pattern=/^\w{6,18}$/;
if(this.value==''){
spans[0].innerHTML='账户名不能为空';
}else if(!pattern.test(this.value)){
spans[0].innerHTML='账户名必须为6-18位字母、数字或下划线';
}else{
spans[0].innerHTML='账户名格式正确';
input1=true;
}
}
// 中文名
chinaName.onfocus=function(){
spans[1].innerHTML='请输2-5位中文';
}
chinaName.onblur=function(){
var pattern=/^[\u4e00-\u9fa5]{2,5}$/;
if(this.value==''){
spans[1].innerHTML='姓名不能为空';
}else if(!pattern.test(this.value)){
spans[1].innerHTML='姓名名必须为2-5位中文';
}else{
spans[1].innerHTML='姓名格式正确';
input2=true;
}
}
// 邮箱
email.onfocus=function(){
spans[2].innerHTML='请输邮箱号';
}
email.onblur=function(){
var pattern=/^\w+@\w+\.[a-zA-Z]{2,4}$/;
if(this.value==''){
spans[2].innerHTML='邮箱不能为空';
}else if(!pattern.test(this.value)){
spans[2].innerHTML='邮箱格式不正确';
}else{
spans[2].innerHTML='邮箱格式正确';
input3=true;
}
}
// 提交
submit.onclick=function(){
if(input1&&input2&&input3){
alert('注册成功');
}else{
alert('请按要求填写信息');
}
}
</script>
</body>
</html>
1回答
同学你好,第一次输入符合条件的内容,再修改为不符合条件的内容,点击注册按钮时,会弹出注册成功的提示,如下:

建议:如果不符合条件,将标识符修改为false,以第一个输入框为例:
代码比较简洁,可以不用优化了。祝学习愉快~
相似问题