Как вызвать функцию, если тип ввода email действителен? - PullRequest
2 голосов
/ 11 июля 2019

У меня есть HTML-форма с input type="email".Это поле будет приниматься только в том случае, если ввод совпадает с допустимым шаблоном электронной почты.

Я хочу сделать AJAX-запрос к серверу, убедившись, что электронная почта не существует в базе данных после проверки введенной электронной почтыполе ввода.Для этого я попробовал функцию .valid () в поле, надеясь, что она будет срабатывать при вводе действительного электронного письма, так как: valid это псевдокласс CSS.

$("input[type='email']").valid(function() {
    let email = $("input[type='email']").val();
    if(email != null) {
        $.ajax({
            // Ajax request made here..
        })
    }
}

Но я получаю ошибку, которая действительнаМетод не существует.Как еще можно добиться этого?

Редактировать: Мой вопрос не касается проверки того, находится ли электронная почта в правильном формате или нет, как описано в этом вопросе.Речь идет о запуске функции, которая выполняет вызов AJAX, только если введенный адрес электронной почты уже находится в допустимом формате.Вызов AJAX проверяет, связано ли письмо с другой учетной записью или нет.Я мог бы сделать эту функцию в фокусе, но это сделает ненужные звонки на сервер, когда электронная почта явно недействительна.

1 Ответ

2 голосов
/ 11 июля 2019

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

$("input[type='email']").keyup(function() {
    let email = $("input[type='email']").val();
    if($(this).is(':valid')) {
        $.ajax({
            // Ajax request made here..
        })
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...