<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>表单验证</title>
</head>
<body>
<style type="text/css">
span{color: red;
font-size: 0.75rem;
}
</style>
<script type="text/javascript">
window.onload=function(){
var usernameError=document.getElementById("usernameError").innerText
var passwordError=document.getElementById("passwordError").innerText
var password2Error=document.getElementById("password2Error").innerText
var emailError=document.getElementById("emailError").innerText
var usernameElt=document.getElementById("username")//获取用户名框元素
var username=usernameElt.value//获取用户名
username=username.trim()//去除前后空白
var regExp=/^[A-Za-z0-9]+$/
usernameElt.onblur=function(){
if(username){
//用户名不为空
if(username.length<=6||username.length>14){//验证用户名长度合法性
usernameError="用户名长度不合法"//用户名长度不合法
}
else if(regExp.test(username){
//用户名格式合法
else{
usernameError="用户名格式错误"
}
}
}else{
usernameError="用户名不能为空"
}
}
usernameElt.onfocus=function(){
if(username===""){
username=""//如果用户名都是空白符则清空
}
usernameError=""//清除错误提示
}
var passwordElt=document.getElementById("password")//获取密码框元素
var password=passwordElt.value//获取密码
passwordElt.onblur=function(){//验证密码
if(password==""){
passwordError="密码不能为空"
}else if(password==username){
passwordError="密码不能与用户名重复"
}
}
passwordElt.onfocus=function(){
passwordError=""//清除错误提示
}
var password2Elt=document.getElementById("password2")//获取确认密码框
var password2=password2Elt.value//获取确认密码
password2Elt.onblur=function(){
if(password==password2){
//密码一致
} else{
password2Error="密码不一致"
}
}
password2Elt.onfocus=function(){
password2Error=""//清除错误提示
}
var emailElt=document.getElementById("email")//获取邮箱框
var email=emailElt.value//获取邮箱
var regExp2=/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$///邮箱正则表达式
emailElt.onblur=function(){
if(email===""){
emailError.innerText="邮箱不能为空"
}else if(regExp2.test(email)){
//邮箱地址合法
}else{
emailError="邮箱地址不合法"
}
}
document.getElementById("email").onfocus=function(){
emailError=""//清除错误提示
}
var register=document.getElementById("register")
register.onclick=function(){
usernameElt.focus()
usernameElt.blur()
passwordElt.focus()
passwordElt.blur()
password2Elt.focus()
password2Elt.blur()
emailElt.focus()
emailElt.blur()
//触发每项文本框事件
}
if((usernameError==""&&passwordError==""&&password2Error=="")&&emailError=""){
document.getElementById("Form").submit()
//提交表单
}else{
alert("表单内容有误!")
}
var reset=document.getElementById("reset")
reset.onclick=function(){
username=""
password=""
password2=""
email=""
}
}
</script>
<!--表单提交一般用post,这里为了检测所以用get-->
<form action="new_file.html" id="Form" method="get">
用户名<input type="text" id="username" /><span id="usernameError"></span><br />
密码<input type="password" id="password" /><span id="passwordError"></span> <br />
确认密码<input type="password" id="password2" /><span id="password2Error"></span><br />
邮箱<input type="text" id="email" /><span id="emailError"></span><br />
<input type="button" value="注册" id="register" />
<input type="button" value="重置" id="reset" />
</form>
</body>
</html>
<html>
<head>
<meta charset="utf-8">
<title>表单验证</title>
</head>
<body>
<style type="text/css">
span{color: red;
font-size: 0.75rem;
}
</style>
<script type="text/javascript">
window.onload=function(){
var usernameError=document.getElementById("usernameError").innerText
var passwordError=document.getElementById("passwordError").innerText
var password2Error=document.getElementById("password2Error").innerText
var emailError=document.getElementById("emailError").innerText
var usernameElt=document.getElementById("username")//获取用户名框元素
var username=usernameElt.value//获取用户名
username=username.trim()//去除前后空白
var regExp=/^[A-Za-z0-9]+$/
usernameElt.onblur=function(){
if(username){
//用户名不为空
if(username.length<=6||username.length>14){//验证用户名长度合法性
usernameError="用户名长度不合法"//用户名长度不合法
}
else if(regExp.test(username){
//用户名格式合法
else{
usernameError="用户名格式错误"
}
}
}else{
usernameError="用户名不能为空"
}
}
usernameElt.onfocus=function(){
if(username===""){
username=""//如果用户名都是空白符则清空
}
usernameError=""//清除错误提示
}
var passwordElt=document.getElementById("password")//获取密码框元素
var password=passwordElt.value//获取密码
passwordElt.onblur=function(){//验证密码
if(password==""){
passwordError="密码不能为空"
}else if(password==username){
passwordError="密码不能与用户名重复"
}
}
passwordElt.onfocus=function(){
passwordError=""//清除错误提示
}
var password2Elt=document.getElementById("password2")//获取确认密码框
var password2=password2Elt.value//获取确认密码
password2Elt.onblur=function(){
if(password==password2){
//密码一致
} else{
password2Error="密码不一致"
}
}
password2Elt.onfocus=function(){
password2Error=""//清除错误提示
}
var emailElt=document.getElementById("email")//获取邮箱框
var email=emailElt.value//获取邮箱
var regExp2=/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$///邮箱正则表达式
emailElt.onblur=function(){
if(email===""){
emailError.innerText="邮箱不能为空"
}else if(regExp2.test(email)){
//邮箱地址合法
}else{
emailError="邮箱地址不合法"
}
}
document.getElementById("email").onfocus=function(){
emailError=""//清除错误提示
}
var register=document.getElementById("register")
register.onclick=function(){
usernameElt.focus()
usernameElt.blur()
passwordElt.focus()
passwordElt.blur()
password2Elt.focus()
password2Elt.blur()
emailElt.focus()
emailElt.blur()
//触发每项文本框事件
}
if((usernameError==""&&passwordError==""&&password2Error=="")&&emailError=""){
document.getElementById("Form").submit()
//提交表单
}else{
alert("表单内容有误!")
}
var reset=document.getElementById("reset")
reset.onclick=function(){
username=""
password=""
password2=""
email=""
}
}
</script>
<!--表单提交一般用post,这里为了检测所以用get-->
<form action="new_file.html" id="Form" method="get">
用户名<input type="text" id="username" /><span id="usernameError"></span><br />
密码<input type="password" id="password" /><span id="passwordError"></span> <br />
确认密码<input type="password" id="password2" /><span id="password2Error"></span><br />
邮箱<input type="text" id="email" /><span id="emailError"></span><br />
<input type="button" value="注册" id="register" />
<input type="button" value="重置" id="reset" />
</form>
</body>
</html>
//用户名格式合法
else {
usernameError = "用户名格式错误"
}
}else是不能嵌套在else if 里的,应该和else if 并列
我又修改了几处代码,麻烦再帮我看看哪有问题
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>表单验证</title>
</head>
<body>
<style type="text/css">
span{color: red;
font-size: 0.75rem;
}
</style>
<script type="text/javascript">
window.onload=function(){
var usernameError=document.getElementById("usernameError").innerText
var passwordError=document.getElementById("passwordError").innerText
var password2Error=document.getElementById("password2Error").innerText
var emailError=document.getElementById("emailError").innerText
var usernameElt=document.getElementById("username")//获取用户名框元素
var username=usernameElt.value//获取用户名
username=username.trim()//去除前后空白
var regExp=/^[A-Za-z0-9]+$/
var ok=regeExp.test(username)
usernameElt.onblur=function(){
if(username===""){
usernameError="用户名不能为空"
}else if(username.length<6||username.length>14){
usernameError="用户名长度不合法"
}else if(!ok){
usernameError="用户名格式不合法"
}
}
usernameElt.onfocus=function(){
if(username===""){
username=""//如果用户名都是空白符则清空
}
usernameError=""//清除错误提示
}
var passwordElt=document.getElementById("password")//获取密码框元素
var password=passwordElt.value//获取密码
passwordElt.onblur=function(){//验证密码
if(password==""){
passwordError="密码不能为空"
}else if(password==username){
passwordError="密码不能与用户名重复"
}
}
passwordElt.onfocus=function(){
passwordError=""//清除错误提示
}
var password2Elt=document.getElementById("password2")//获取确认密码框
var password2=password2Elt.value//获取确认密码
password2Elt.onblur=function(){
if(password==password2){
//密码一致
} else{
password2Error="密码不一致"
}
}
password2Elt.onfocus=function(){
password2Error=""//清除错误提示
}
var emailElt=document.getElementById("email")//获取邮箱框
var email=emailElt.value//获取邮箱
var regExp2=/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$///邮箱正则表达式
emailElt.onblur=function(){
if(email===""){
emailError="邮箱不能为空"
}else if(regExp2.test(email)){
//邮箱地址合法
}else{
emailError="邮箱地址不合法"
}
}
document.getElementById("email").onfocus=function(){
emailError=""//清除错误提示
}
var register=document.getElementById("register")
register.onclick=function(){
usernameElt.focus()
usernameElt.blur()
passwordElt.focus()
passwordElt.blur()
password2Elt.focus()
password2Elt.blur()
emailElt.focus()
emailElt.blur()
//触发每项文本框事件
if(usernameError!=""){
alert("表单内容有误,无法提交")
}else if(passwordError!=""){
alert("表单内容有误,无法提交")
}else if(password2Error!=""){
alert("表单内容有误,无法提交")
}else if(emailError!=""){
alert("表单内容有误,无法提交")
}else{
alert("正在提交")
}
}
var reset=document.getElementById("reset")
reset.onclick=function(){
username=""
password=""
password2=""
email=""
}
}
</script>
<!--表单提交一般用post,这里为了检测所以用get-->
<form action="new_file.html" id="Form" method="get">
用户名<input type="text" id="username" /><span id="usernameError"></span><br />
密码<input type="password" id="password" /><span id="passwordError"></span> <br />
确认密码<input type="password" id="password2" /><span id="password2Error"></span><br />
邮箱<input type="text" id="email" /><span id="emailError"></span><br />
<input type="button" value="注册" id="register" />
<input type="button" value="重置" id="reset" />
</form>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<title>表单验证</title>
</head>
<body>
<style type="text/css">
span{color: red;
font-size: 0.75rem;
}
</style>
<script type="text/javascript">
window.onload=function(){
var usernameError=document.getElementById("usernameError");
var passwordError=document.getElementById("passwordError");
var password2Error=document.getElementById("password2Error");
var emailError=document.getElementById("emailError");
var usernameElt=document.getElementById("username")//获取用户名框元素
var regExp=/^[A-Za-z0-9]+$/
usernameElt.onblur=function(){
var username=usernameElt.value//获取用户名
username=username.trim()//去除前后空白
var ok=regExp.test(username)
if(username===""){
usernameError.innerText="用户名不能为空"
}else if(username.length<6||username.length>14){
usernameError.innerText="用户名长度不合法"
}else if(!ok){
usernameError.innerText="用户名格式不合法"
}
}
usernameElt.onfocus=function(){
usernameError.innerText=""//清除错误提示
}
var passwordElt=document.getElementById("password")//获取密码框元素
passwordElt.onblur=function(){//验证密码
var password=passwordElt.value//获取密码
var username=usernameElt.value//获取用户名
username=username.trim()//去除前后空白
if(password==""){
passwordError.innerText="密码不能为空"
}else if(password==username){
passwordError.innerText="密码不能与用户名重复"
}
}
passwordElt.onfocus=function(){
passwordError.innerText=""//清除错误提示
}
var password2Elt=document.getElementById("password2")//获取确认密码框
password2Elt.onblur=function(){
var password=passwordElt.value//获取密码
var password2=password2Elt.value//获取确认密码
if(password!=password2){
password2Error.innerText="密码不一致"
}
}
password2Elt.onfocus=function(){
password2Error.innerText=""//清除错误提示
}
var emailElt=document.getElementById("email")//获取邮箱框
var regExp2=/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$///邮箱正则表达式
emailElt.onblur=function(){
var email=emailElt.value//获取邮箱
if(email===""){
emailError.innerText="邮箱不能为空"
}else if(!regExp2.test(email)){
emailError.innerText="邮箱地址不合法"
}
}
emailElt.onfocus=function(){
emailError.innerText=""//清除错误提示
}
var register=document.getElementById("register")
register.onclick=function(){
usernameElt.focus()
usernameElt.blur()
passwordElt.focus()
passwordElt.blur()
password2Elt.focus()
password2Elt.blur()
emailElt.focus()
emailElt.blur()
//触发每项文本框事件
if(usernameError.innerText!=""){
alert("表单内容有误,无法提交")
}else if(passwordError.innerText!=""){
alert("表单内容有误,无法提交")
}else if(password2Error.innerText!=""){
alert("表单内容有误,无法提交")
}else if(emailError.innerText!=""){
alert("表单内容有误,无法提交")
}else{
alert("正在提交")
}
}
}
</script>
<!--表单提交一般用post,这里为了检测所以用get-->
<form action="new_file.html" id="Form" method="get">
用户名<input type="text" id="username" /><span id="usernameError"></span><br />
密码<input type="password" id="password" /><span id="passwordError"></span> <br />
确认密码<input type="password" id="password2" /><span id="password2Error"></span><br />
邮箱<input type="text" id="email" /><span id="emailError"></span><br />
<input type="button" value="注册" id="register" />
<input type="reset" value="重置" id="reset" />
</form>
</body>
</html>