Я использую ту же логику, что и для проверки имени в письме, но по какой-то причине она не работает - PullRequest
1 голос
/ 28 июня 2019

Я пытаюсь создать проверку для имени и электронной почты, но по какой-то причине проверка электронной почты не работает.Если убрать проверку моего имени, это будет работать, но не будет работать вместе. А если я введу свое имя и оставлю пустое письмо, оно все равно не отправит уведомление.

function validations(form) {
  var n = document.getElementById("nam").value;
  if (n == "") {
    alert("Please enter Name");
    return false;
  } else {
    return true;
  }

  var em2 = document.getElementById("em1").value;
  if (em2 == "") {
    alert("Please enter EMAIL");
    return false;
  } else {
    return true;
  }
}
<form action="#" method="POST" onsubmit="return validations(this);">
  <div class="name">
    Name : <input type="text" id="nam" name="fullName">
  </div>
  <div class="em">
    Email : <input type="email" name="Email" id="em1">
  </div>
  <button type="submit" class="btn btn-primary btn-lg">Save</button>
</form>

Ответы [ 2 ]

3 голосов
/ 28 июня 2019

Ваша функция всегда возвращается после проверки nam, независимо от того, действительна она или нет. Вы должны досрочно вернуть false, если nam недействительно, но удерживайте с возвратом true, пока вы не подтвердите всю форму. E.g.:

function validations(form) {
    // Check the name
    var n = document.getElementById("nam").value; 
    if (n == ""){
        alert("Please enter Name");
        return false ;
    }

    // Check the email
    var em2 = document.getElementById("em1").value; 
    if (em2 == ""){
        alert("Please enter EMAIL");
        return false ;
    } 

    // If we reached here, both the name and email are OK
    return true;
}
1 голос
/ 28 июня 2019

Чтобы упростить процесс, просто используйте ввод HTML type="email" с атрибутом required.Затем он проверит, что пользователь ввел действительный адрес электронной почты.

См. Документ здесь

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