请问调用alert()方法为什么会出现提示两次的情况?

1.调用alert方法出现两次相同的提示信息,如果有多个alert调用,会在开头出现一次,结尾出现一次。
<!DOCTYPE html PUBLIC “-//W3C//DTD XH TML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
<html xmlns=”“>http://www.w3.org/1999/xhtml&…
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″ />
<title>无标题文档</title>
<script language=”javascript”>
function RegEx
{

checkName;
checkAge;
checkId;
checkEmail;
ifcheckName&&checkAge&&checkId&&checkEmail alert"恭喜您,输入全部正确"; 

}
function checkName
{

var Name=document.getElementById"UserName".value;
var reg=/^[a-zA-Z][a-zA-Z0-9_]*$/;
ifName!=""
{ if!reg.testName { alert"您输入的用户名不合法!请以字母开头"; document.getElementById"UserName".focus; return false; } }
else
{ alert"请输入用户名"; return false;
}
return true;

}
function checkAge
{

var Age=document.getElementById"UserAge".value;
ifAge!=""
{ ifAge<=0||Age>100 { alert"您输入的年龄不合法!请输入1-100"; document.getElementById"UserAge".focus; return false; } }
else
{ alert"请输入年龄"; return false;
}
return true;

}
function checkId
{

var Id=document.getElementById"UserId".value;
var reg=/^d{16}$|^d{18}$|^d{17}d|X|x$/;
ifId!=""
{ if!reg.testId { alert"您输入的身份证不合法!请输入16位或18位身份证号"; document.getElementById"UserId".focus; return false; }
}
else
{ alert"请输入身份证号码"; return false;
}
return true;

}
function checkEmail
{

var email = document.getElementById"UserEmail".value; var reg = /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+.[a-zA-Z0-9_-]+/ ; if email != "" { if!reg.testemail { alert"您输入的电子邮件地址不合法!"; document.getElementById"UserEmail".focus; return false; } 

}
else

{ alert"请输入电子邮件"; return false;
}

return true;
}
</script>
</head>

<body>

昵称: <label for=”name”></label> <input type=”text” name=”name” id=”UserName” />
年龄: <label for=”age”></label> <input type=”text” name=”age” id=”UserAge” />
身份证: <label for=”userId”></label> <input type=”text” name=”userId” id=”UserId” />
邮箱: <label for=”Email”></label> <input type=”text” name=”Email” id=”UserEmail” />
<div align=”center”> <input type=”submit” name=”confirm” id=”confirm” value=”提交” onclick=”RegEx” /> </div>

</body>
</html>

在RegEx函数里,前四行已经调用了检测函数,if中又再次调用,去掉前四行就行。

前面已经执行一次,if中又执行了一次。

function RegEx
{ var a=checkName; var b=checkAge; var c=checkId; var d=checkEmail; ifa && b && c && d alert"恭喜您,输入全部正确";
}

发表评论

电子邮件地址不会被公开。 必填项已用*标注