没有提示注册成功?请问是什么原因?
来源:3-9 编程练习
慕哥4499868
2019-04-24 10:04:19
<!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 () {
items[0].innerHTML = "请输入6-18位字母、数字或'_'";
};
username.onblur = function () {
var reg = /^\w{6,18}$/;
if (this.value == "") {
spans[0].innerHTML = "格式不正确";
} else {
if(!reg.exec(username.value)) {
spans[0].innerHTML = "格式不正确";
} else {
spans[0].innerHTML = "";
input1 = true;
}
}
};
//中文名
chinaName.onfocus = function () {
spans[1].innerHTML = "请输入中文字";
};
chinaName.onblur = function () {
var reg = /^[\u4e00-\u9fa5]{2,}$/;
if (this.value == "") {
spans[1].innerHTML = "格式不正确";
} else {
if (!reg.exec(chinaName.value)) {
spans[1].innerHTML = "格式不正确";
} else {
spans[1].innerHTML = "";
input2 = true
}
}
};
//邮箱
email.onfocus = function () {
spans[2].innerHTML = "请输入邮箱";
};
email.onblur = function () {
var reg = /^\w+@\w+\.[a-zA-Z_]{2,4}$/;
if (this.value == "") {
spans[2].innerHTML = "格式不正确";
} else {
if (!reg.exec(email.value)) {
spans[2].innerHTML = "格式不正确";
} else {
spans[2].innerHTML = "";
input3 = true;
}
}
};
//zhuce
submit.onclick=function(){
if (test1 == false || test2 == false || test3 == false) {
alert(" 请按要求填写完整信息 ");
} else {
alert(" 注册成功");
}
};
</script>
</body>
</html>
1回答
同学你好, 因为代码中存在错误,使用了没有声明的变量, 导致没有提示注册成功。
用户名输入框聚焦的时候, 没有items这个变量,另, 点击按钮提交的时候,判断条件写的是test1/test2/test3, 但是前面声明的变量为input1/input2/input3
建议如下图修改:

如果帮助到了你, 欢迎采纳
祝学习愉快~~~~
相似问题