подтвердите поле электронной почты и убедитесь, что не пусто - PullRequest
0 голосов
/ 03 марта 2020

Я запускаю небольшой скрипт jQuery в поле формы, когда форма пытается быть отправлена, чтобы проверить правильность заполнения поля формы электронной почты, поскольку я не могу положиться на проверку HTML5. Код такой, как показано ниже ... проблема в том, что ... если вы оставите поле пустым и нажмете кнопку отправки, оно подтвердит правильность, если оно должно быть ложным ... что я пропустил?

<script>

function validateEmail(email) {
var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
return emailReg.test( email );
}

var clicked = jQuery(".button");

clicked.click(function() {
var email = jQuery("input[type='email']").val();
( !validateEmail(email) ) ? alert('Please complete the mandatory email field') : this.form.action='https://brandname.us2.list-manage.com/subscribe/post?u=123&amp;id=abc';this.form.submit();
});


</script>

1 Ответ

0 голосов
/ 03 марта 2020

Регулярное выражение не проверяет, является ли электронная почта пустой, поэтому добавьте проверку в if, как это:

 (email && !validateEmail(email) ) ? alert('Please complete the mandatory email field'): 
...