一段JS代码的逻辑问题?

wangxiaolin5288 2011-10-24 07:27:25
请问这段js代码的逻辑


function regCheck()
{
//alert("gghgh");
check_UserName();
if(!check_UserName_bool || $("text_UserName").value =="")
{
$("text_UserName").focus();
return false;
}

alert("通过了啊");

check_UserPWD1();
if(!check_UserPWD1_bool|| $("text_UserPWD1").value =="")
{
$("text_UserPWD1").focus();
return false;
}

check_UserPWD2();
if(!check_UserPWD2_bool)
{
$("text_UserPWD2").focus();
return false;
}

//alert("验证 Email 时:" + check_UserName_bool);
//check_UserEmail();
alert("验证时 Email:" + check_UserName_bool);
if(!check_UserEmail_bool || $("text_UserEmail").value =="")
{
$("text_UserEmail").focus();
return false;
}
alert(" Email 通过了啊");
check_ValidCode();
if(!check_ValidCode_bool)
{
$("text_ValidCode").focus();
return false;
}




}

为什么我在用的时候,它只检测用户名是否为空??
下面如果密码,邮箱为空它都不能返回false,而且alert也不会有提示,
只有第一个alert会提示信息,后面的好像都没用上,难道是程序本身就错了吗??
求大神!!!给解释。。。。。
...全文
117 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
qybao 2011-10-25
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 wangxiaolin5288 的回复:]
引用 1 楼 lizi351120311 的回复:
你的代码的逻辑是只用前一个验证通过才验证下一个。也就是说当用户名验证没通过时,程序执行到return false,就不在执行,否则验证密码1,如果不通过,也是执行到return false就不在执行,否则验证密码2...依次类推。

可是,用户名写对了的,那它就不会return false 撒??为什么下面的依然不能进行???
[/Quote]
那你应该查看一下check_UserPWD1()等函数的内部逻辑实现
还有,从你这段代码来看,只有用户名通过验证的时候会alert,密码不对的时候没有alert就返回false了
wangxiaolin5288 2011-10-25
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 lizi351120311 的回复:]
你的代码的逻辑是只用前一个验证通过才验证下一个。也就是说当用户名验证没通过时,程序执行到return false,就不在执行,否则验证密码1,如果不通过,也是执行到return false就不在执行,否则验证密码2...依次类推。
[/Quote]
可是,用户名写对了的,那它就不会return false 撒??为什么下面的依然不能进行???
24K純帥 2011-10-24
  • 打赏
  • 举报
回复
是return false的原因
nizhicheng 2011-10-24
  • 打赏
  • 举报
回复
楼上说的很对~~你要理解 return false; 的作用~~ 一个JS 方法内如果用了return false 跳出函数 不执行接下来的方法了
lizi351120311 2011-10-24
  • 打赏
  • 举报
回复
你的代码的逻辑是只用前一个验证通过才验证下一个。也就是说当用户名验证没通过时,程序执行到return false,就不在执行,否则验证密码1,如果不通过,也是执行到return false就不在执行,否则验证密码2...依次类推。

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧