日期:2014-05-17  浏览次数:20756 次

JS简单的判断
<script type="text/javascript">
function upregister(){
var yonghuming=/^([a-zA-Z0-9_\u4e00-\u9fa5]{2,10})$/;
var mima =/^([a-zA-Z0-9_]{6,14})$/;

if (document.getElementById('userName').value=="" ||document.getElementById('bd').value=="" || document.getElementById('passWord').value==""||document.getElementById('passWord2').value==""||document.getElementById('Name').value=="")
{
alert("请完整信息!");
return false;
}
else{
if(!yonghuming.test(document.getElementById('userName').value)){
alert("请按规则输入用户名!");
return false;
}
else{
if(document.getElementById('passWord').value!=document.getElementById('passWord2').value){
  alert("两次密码输入不一致!");
  return false;
}
else{
if(!mima.test(document.getElementById('passWord').value)){
alert("请按规则输入密码!");
return false;
}
else{
return true;

}

}
}
}

}

</script>

<html:form action="/register" method="POST" onsubmit="return upregister()">  

为什么这个判断只能判断第一个 其他的If不执行,判断为是否为空,填写完信息后就转跳ACtion了??
要怎么改啊

------解决方案--------------------
把if里面的条件拆开,分成多个if
------解决方案--------------------
修改为

if ()
{
}else if ()
{
}else if ()
{
}....

的形式,会让你的程序易读性提高不少。


你的程序中所有的else除了最后一个都是多余的。