Проверка формы с использованием javascript (Регистрационная форма с форматированием) - PullRequest
0 голосов
/ 13 февраля 2020

Я пытаюсь проверить каждое поле и отобразить соответствующие сообщения об ошибках, используя заданное форматирование. В имени пользователя отображается соответствующее сообщение об ошибке, но остальная часть кода не «работает». Поле электронной почты работало, но после того, как я сохранил переменные atEmail и dotEmail, оно больше не работало. Я пытался сделать это уже пару дней. Любые предложения приветствуются.

function validateForm () {

var firstPassword = document.myForm.passwordOne.value;
var secondPassword = document.myForm.passwordTwo.value; 
var emailID = document.myForm.email.value;
var alphaNumeric = /^[\w ]+$/;
var letters = /^[A-Za-z]+$/;
var atEmail = emailID.indexOf("@");
var dotEmail = emailID.lastIndexOf(".");
var phone = /^\(?([0-9]{3})\)?[-. ]?([0-9]{3})[-. ]?([0-9]{4})$/;

 if(!alphaNumeric.test(document.myForm.userName.value)) {
    alert( "Please enter letters and numbers only!" );
    document.myForm.userName.focus() ;
    return false;
 }

 if(firstPassword.value.length < 8) {
    alert( "Password must be at least 8 characters" );
    document.myForm.passwordOne.focus() ;
    return false;
 }

 if(document.myForm.firstPassword.value != document.myForm.secondPassword.value ) {
    alert( "Password must match!" );
    document.myForm.passwordTwo.focus() ;
    return false;
 }

 if(!letters.match(document.myForm.firstName.value)) {
    alert( "Your first name should only contain letters!" );
    document.myForm.firstName.focus() ;
    return false;
 }

 if(!letters.match(document.myForm.lastName.value)) {
    alert( "Your last name should only contain letters!" );
    document.myForm.lastName.focus() ;
    return false;
 }

 if (atEmail < 1 || ( dotEmail - atEmail < 2 )) {
    alert("Please enter valid email address format: xxx@xxx.xxx");
    document.myForm.email.focus() ;
    return false;
 }

 if(phonenumber.value.match(phone)) {
    alert( "Please enter valid phone number format:(xxx) xxx-xxxx" );
    document.myForm.phonenumber.focus() ;
    return false;
 }

 if((document.myForm.signUpNewletter[0].checked == false) &&(document.myForm.signUpNewletter[1].checked == false )) {
    alert( "Please check yes or no!" );
    document.myForm.signUpNewsletter.focus() ;
    return false;
 }

 return true;

}

1 Ответ

0 голосов
/ 13 февраля 2020

Вы уверены, что это правильно?

if(document.myForm.firstPassword.value != document.myForm.secondPassword.value ) {

Вы уже определили firstPassword и secondPassword переменные, тогда зачем использовать их в document.myForm.firstPassword и document.myForm.secondPassword

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...