Javascript部分正常工作,不可用';我不回答

Javascript部分正常工作,不可用';我不回答,javascript,html,asp.net,Javascript,Html,Asp.net,我的javascript代码部分工作,它在名字验证上工作,在电子邮件验证上显示错误一秒钟,但它没有返回false,密码验证根本不工作 function validate() { var emailOk = validateEmail(); var fNameOk = validateFirstName(); var paswOk = validatePassword(); return fNameOk; return paswOk; return

我的javascript代码部分工作,它在名字验证上工作,在电子邮件验证上显示错误一秒钟,但它没有返回false,密码验证根本不工作

function validate() {
     var emailOk = validateEmail();
    var fNameOk = validateFirstName();
    var paswOk = validatePassword();
    return fNameOk;
    return paswOk;
    return emailOk;
}

function validatePassword() {
    var name = document.getElementById("psw");
    name.style.borderColor = "";
    document.getElementById("passwordErr").innerText = "";
    if (name.value.length < 7) {
        name.style.borderColor = "red";
        var error = document.getElementById("passwordErr");
        error.innerText = "Password does not fit the criteria.";
        return false;
    }
    else
        return true;
}

function validateFirstName() {
    var name = document.getElementById("F_Name");
    name.style.borderColor = "";
    document.getElementById("fNameErr").innerText = "";
    if (name.value.length == 0) {
        name.style.borderColor = "red";
        var error = document.getElementById("fNameErr");
        error.innerText = "Missing first name.";
        return false;
    }
    else
        return true;
}

function validateEmail() {
    var name = document.getElementById("email");
    name.style.borderColor = "";
    document.getElementById("emailErr").innerText = "";
    var re = /\S+@\S+\.\S+/;
    if (re.test(name) == true)
        return true;
    else
        var error = document.getElementById("emailErr");
    error.innerText = "Not a vaild email.";
    return false;
}
函数验证(){
var emailOk=validateEmail();
var fNameOk=validateFirstName();
var paswOk=validatePassword();
返回fNameOk;
回锅;
返回emailOk;
}
函数validatePassword(){
var name=document.getElementById(“psw”);
name.style.borderColor=“”;
document.getElementById(“密码错误”).innerText=“”;
如果(name.value.length<7){
name.style.borderColor=“红色”;
var error=document.getElementById(“密码错误”);
error.innerText=“密码不符合条件。”;
返回false;
}
其他的
返回true;
}
函数validateFirstName(){
var name=document.getElementById(“F_name”);
name.style.borderColor=“”;
document.getElementById(“fNameErr”).innerText=“”;
如果(name.value.length==0){
name.style.borderColor=“红色”;
var error=document.getElementById(“fNameErr”);
error.innerText=“缺少名字。”;
返回false;
}
其他的
返回true;
}
函数validateEmail(){
var name=document.getElementById(“电子邮件”);
name.style.borderColor=“”;
document.getElementById(“emailErr”).innerText=“”;
var re=/\S+@\S+\.\S+/;
如果(重新测试(名称)=真)
返回true;
其他的
var error=document.getElementById(“emailErr”);
error.innerText=“不是有效的电子邮件。”;
返回false;
}

我希望当您输入短于7的密码并显示消息时,它会停止。我还希望它在电子邮件无效时停止。

您的else语句写得不正确。它们也应该用花括号打开和关闭

else { // code }
此外,在return语句之后编写的代码将不会执行。您需要使用对象或数组同时返回3个变量。
函数验证(){
var emailOk=validateEmail();
var fNameOk=validateFirstName();
var paswOk=validatePassword();
console.log(fNameOk、paswOk、emailOk)
返回{
fNameOk,
帕斯沃克,
emailOk
}
}
函数validatePassword(){
var name=document.getElementById(“psw”);
name.style.borderColor=“”;
document.getElementById(“密码错误”).innerText=“”;
如果(name.value.length<7){
name.style.borderColor=“红色”;
var error=document.getElementById(“密码错误”);
error.innerText=“密码不符合条件。”;
返回false;
}否则{
返回true;
}
}
函数validateFirstName(){
var name=document.getElementById(“F_name”);
name.style.borderColor=“”;
document.getElementById(“fNameErr”).innerText=“”;
如果(name.value.length==0){
name.style.borderColor=“红色”;
var error=document.getElementById(“fNameErr”);
error.innerText=“缺少名字。”;
返回false;
}否则{
返回true;
}
}
函数validateEmail(){
var name=document.getElementById(“电子邮件”);
name.style.borderColor=“”;
document.getElementById(“emailErr”).innerText=“”;
var re=/\S+@\S+\.\S+/;
如果(重新测试(名称)=真){
返回true;
}否则{
var error=document.getElementById(“emailErr”);
error.innerText=“不是有效的电子邮件。”;
返回false;
}
}



登记
有一件事我可以说,使用:

return fNameOk && paswOk && emailOk;
而不是:

 return fNameOk;
 return paswOk;
 return emailOk;

因为当您编写“return fNameOk;”时,它将从函数返回。接下来的两行将永远不会执行

请提供一个。您的else语句写得不正确。它们也应该用花括号打开和关闭,else{//code}@Kobe对于只有一行的else语句,这不重要。你看他的代码@JamesS吗?并不是他的所有函数,其他语句都是一个lines@kobe啊,我看到了validateEmail的功能。My badAgree,或者干脆
返回fNameOk&&paswOk&&emailOk我同意,我只返回了所有三个bool,因为我相信OP希望他的代码就是这样做的。如果这不能解决您的问题,请提供完整的js代码(特别是返回fNameOk、passOk、emailOk的函数)