JS表单验证只有第一个IF起作用
functioncheck(){varusername=document.getElementById("username").value;varpass1=docume...
function check(){
var username = document.getElementById("username").value;
var pass1 = document.getElementById("password").value;
var pass2 = document.getElementById("confirm_password").value;
var checkcode = document.getElementById("checkcode").value;
if(pass1 != pass2){
alert("两次密码输入不一致!");
return false;
}
if (username == ""|| username == NULL || pass1 == "" || pass1 == NULL || pass2 == NULL || pass2 == "") {
alert("用户名或密码不得为空!");
return false;
}
}
两个IF,只有前面这个起作用,换了位置也是,谁在前谁起作用,第二个就没作用了。
不知道为什么啊!! 展开
var username = document.getElementById("username").value;
var pass1 = document.getElementById("password").value;
var pass2 = document.getElementById("confirm_password").value;
var checkcode = document.getElementById("checkcode").value;
if(pass1 != pass2){
alert("两次密码输入不一致!");
return false;
}
if (username == ""|| username == NULL || pass1 == "" || pass1 == NULL || pass2 == NULL || pass2 == "") {
alert("用户名或密码不得为空!");
return false;
}
}
两个IF,只有前面这个起作用,换了位置也是,谁在前谁起作用,第二个就没作用了。
不知道为什么啊!! 展开
展开全部
最主要的原因是:你的 if 判断中有 return 语句
但没有还不行,如果你想让所有的条件都有效,需要修改你的程序结构。
如果想要相关程序,追问下,我再发。
更多追问追答
追问
改成 if(){
}else if(){
}else if(){
}else{
}
还是不行
要怎么写才能达到我要的效果。
谢谢!
追答
function check(){
var username = document.getElementById("username").value;
var pass1 = document.getElementById("password").value;
var pass2 = document.getElementById("confirm_password").value;
var checkcode = document.getElementById("checkcode").value;
ind = false; //做个出错标记
str = ""; //定义空字符串
//如果两次密码不一致,打标,并加入提示
if(pass1 != pass2){
str += "两次密码输入不一致!";
ind = true;
}
//如果存在空输入,打标,并加入提示
if (username == "" || pass1 == "" || pass2 == "") {
str += "用户名或密码不得为空!";
ind = true;
}
//无论出现以上任何错误,都将 return false(停止提交),并且提示错误信息,提示的错误信息可以是以上任意一个,也可以是全部。
if(ind){
alert(str);
return false;
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询