Javascript部分正常工作,不可用';我不回答
我的javascript代码部分工作,它在名字验证上工作,在电子邮件验证上显示错误一秒钟,但它没有返回false,密码验证根本不工作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
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的函数)