多个登录用户 - javascript

时间:2010-10-14 09:00:41

标签: javascript

我想使用这个javascript但能够硬编码3个用户,以便那3个能够登录。我是javascript的新手,所以是的。以下是我用于单个用户登录的代码。

function validate(loginForm)
{
 var booValid = true;
 var strErrorMessage = "";
 var minLength=5;
 var maxLength=10;

 if(loginForm.pword.value.length < minLength)
 {
  strErrorMessage = "password must at least 5 characters\n";
  booValid=false;
 }

 if(loginForm.pword.value.length > maxLength)
 {
  strErrorMessage = "pasword must not more than 10 characters\n";
  booValid=false;
 }
 if(loginForm.loginid.value.indexOf("jss1@yahoo.com.au") == -1)
 {
    strErrorMessage = "Incorrect Login ID, Please try again\n";
    booValid = false;
 }
 else if(loginForm.loginid.value.indexOf("jss2@yahoo.com.au") == -1)
 {
    strErrorMessage = "Incorrect Login ID, Please try again\n";
    booValid = false;
 }
 else if(loginForm.loginid.value.indexOf("jss3@yahoo.com.au") == -1)
 {
    strErrorMessage = "Incorrect Login ID, Please try again\n";
    booValid = false;
 }

 if(!booValid)
 {
  alert(strErrorMessage);
 }

 return booValid;
}

我尝试过使用“else if”但仍然无效。它说用户名错了。

我也试着:

if(loginForm.pword.value.indexOf("jss1@yahoo.com.au") == -1) || loginForm.pword.value.indexOf("jss1@yahoo.com.au") == -1 || loginForm.pword.value.indexOf("jss1@yahoo.com.au") == -1)
{
strErrorMessage = "Incorrect Login ID, Please try again\n";
booValid=false;
}

请帮忙!

1 个答案:

答案 0 :(得分:0)

我已经评论了。 不要使用JavaScript和任何类型的登录!

但我是一个好人,所以我仍然想帮忙。请尝试以下操作(或查看此处的实时示例:http://www.jsfiddle.net/spyAB/1/):

function validate(loginForm) {
    var booValid = true;
    var strErrorMessage = "";
    var minLength = 5;
    var maxLength = 10;

    if (loginForm.pword.value.length < minLength) {
        strErrorMessage = "password must at least 5 characters\n";
        booValid = false;
    }
    else if (loginForm.pword.value.length > maxLength) {
        strErrorMessage = "pasword must not more than 10 characters\n";
        booValid = false;
    }
    if (loginForm.loginid.value != "jss1@yahoo.com.au" && loginForm.loginid.value != "jss1@yahoo.com.au" && loginForm.loginid.value != "jss1@yahoo.com.au") {
        strErrorMessage += "Incorrect Login ID, Please try again\n";
        booValid = false;
    }
    if (!booValid) {
        alert(strErrorMessage);
    }
}

你有一个错误:为什么不直接将pword字段的value与字符串进行比较而不是indexOf?你在使用下拉框吗?此外,我冒昧地将+=插入您的strErrorMessage,以便将消息与先前的密码消息连接起来。此外,您的return booValid也是不必要的。

PS:我希望jss1@yahoo.com.au不是您真正的电子邮件地址。切勿以这样的纯文本形式发布您的电子邮件地址,否则垃圾邮件机器人会将您追捕。