2010-10-14 2 views
0

Я хочу использовать этот javascript, но в состоянии жестко запрограммировать 3 пользователя, чтобы эти 3 могли Войти. Я новичок с javascript, так что да. Ниже приведен код, который я использую для входа в систему для одного пользователя.Несколько пользователей - 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("[email protected]") == -1) 
{ 
    strErrorMessage = "Incorrect Login ID, Please try again\n"; 
    booValid = false; 
} 
else if(loginForm.loginid.value.indexOf("[email protected]") == -1) 
{ 
    strErrorMessage = "Incorrect Login ID, Please try again\n"; 
    booValid = false; 
} 
else if(loginForm.loginid.value.indexOf("[email protected]") == -1) 
{ 
    strErrorMessage = "Incorrect Login ID, Please try again\n"; 
    booValid = false; 
} 

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

return booValid; 
} 

Я пытался использовать «else if», но все еще не работает. В нем указано, что имя пользователя неверно.

Я также стараюсь как:

if(loginForm.pword.value.indexOf("[email protected]") == -1) || loginForm.pword.value.indexOf("[email protected]") == -1 || loginForm.pword.value.indexOf("[email protected]") == -1) 
{ 
strErrorMessage = "Incorrect Login ID, Please try again\n"; 
booValid=false; 
} 

Пожалуйста, помогите!

+2

Uhhhm .... JavaScript и логин не вписываются в одно предложение. Даже если вы жестко кодируете своих 3 пользователей с помощью JS, каждый пользователь может обойти это, просто включив Javascript или перезаписав свои функции, чтобы иметь возможность использовать другое имя пользователя. Надеюсь, вы не будете проверять пароль с помощью Javascript. –

+0

'' пароль должен содержать не более 10 символов \ n "' - Почему? По соответствующей заметке: * «жесткий код 3 пользователя» * - Почему? Конечно, эти вопросы риторические, я не думаю, что вы можете найти приемлемое обоснование для этого. – Tomalak

+0

О, я использовал этот код, чтобы сделать простой динамический веб-сайт, и все. Это только для моего задания. – James1

ответ

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 != "[email protected]" && loginForm.loginid.value != "[email protected]" && loginForm.loginid.value != "[email protected]") { 
     strErrorMessage += "Incorrect Login ID, Please try again\n"; 
     booValid = false; 
    } 
    if (!booValid) { 
     alert(strErrorMessage); 
    } 
} 

Вы были одна вещь неправильно: Почему бы не сравнить value в pword поле непосредственно в строку вместо того, чтобы идти на indexOf? Вы используете выпадающие окна? Также я взял на себя смелость вставить += в ваш strErrorMessage, чтобы связать сообщение с предыдущим сообщением пароля. Также не нужен ваш return booValid.

PS: Я надеюсь, что [email protected] не являются вашими настоящими адресами электронной почты. Никогда не публикуйте свой адрес электронной почты в виде обычного текста, или спам-боты будут охотиться на вас.

+0

«Не делай этого!» Но я все равно покажу тебе, как ». Когнитивный диссонанс? – Tomalak

+0

В любом случае, больно писать это, конечно. Но я все еще думаю, что можно учиться на ошибках. Мы могли видеть это «alert (strErrorMessage)» как очень грубый способ «проверки», т. Е. Проверку допустимых имен пользователей (бог запретить) или проверку длины пароля (...) –

+0

Большое спасибо за код выше, это работает отлично. Код, который у меня есть, был у лектора, поскольку я использовал его для демонстрации простого динамического веб-сайта для моего задания. Хотя, я пробовал просто точно, как ваш код выше «loginForm.loginid.value! =" [email protected] ", но я думал, что indexOf лучше, так что да. Адрес электронной почты не был моим реальным адресом ay lolz. В любом случае спасибо так мкух. – James1

Смежные вопросы