0
0

В курсе "ВЕБ-разработчик 2021 - с нуля до результата" в задании 63 (настройка отправки писем) не получается отправлять письма. Код  в скрипте один в один с тем, что на видео, даже просто скопировал нужный кусок с GitHub, но не раюотает. Причем не работате метод ajax, поскольку после введения данных в форму, введеные данные появляются в строке поиска и страница обновлятся, а этого же не должно быть. При этом письма таки отправляются только при введении невалидных данных. Получается, что весь скрипт корректно отрабатывается только при введении невалидных данных.

Код из script.js

$('form').submit(function(e) {
        e.preventDefault();
        $.ajax({
            type: "POST",
            url: "mailer/smart.php",
            data: $(this).serialize()
        }).done(function() {
            $(this).find("input").val("");
            $('#consultation, #order').fadeOut();
            $('.overlay, #thanks').fadeIn('slow');

            $('form').trigger('reset');
        });
        return false;
    });

Вот такая ошибка в консоли

jquery.validate.min.js:4 Uncaught TypeError: Cannot read properties of undefined (reading 'call'). Exception occurred when checking element , check the 'enail' method.
at a.validator.check (jquery.validate.min.js:4)
at a.validator.checkForm (jquery.validate.min.js:4)
at a.validator.form (jquery.validate.min.js:4)
at HTMLFormElement.<anonymous> (jquery.validate.min.js:4)
at HTMLFormElement.dispatch (jquery-1.11.0.min.js:3)
at HTMLFormElement.r.handle (jquery-1.11.0.min.js:3)

jquery.validate.min.js,jquery-1.11.0.min.js - в них ничего не менял просто добавил готовые в проект


Алексей Талицких
3 years ago






Добрый день.

Если данные из формы появляются в строке поиска после отправки - то это могут быть неполадки с локальным сервером. Как вариант - попробуйте другой (MAMP, OpenServer...)

Ошибка же в консоли похожа на то, что проблема в верстке формы. Где-то несовпадают данные из скрипта и из формы: атрибут name, id или что-то вроде. 

Иван Петриченко
3 years ago

Один ответ