Отправка формы [Решено]

Есть форма регистрации, у нее есть своя проверка js.

Моя задача: пропустить проверку ядра вперед, убедиться что проверка вернула true, и остановить отправку формы, пока я не сделаю свои задачи, после этого отправить форму.

Проблема: Проверка ядра = true, свои задачи решил, надо отправить форму. Использую метод jQuery .submit() . Но! Обработчик то формы указан не в action а на кнопке submit! контроллер и задача.

Подскажите как быть?

Решение конечно очевидно, изменить action в форме. Но может есть простое, продуманное решение?

мне кажется вам подойдет
$.ceEvent(‘on’, ‘ce.form.beforeSubmit’, function (form, clicked_elm, form_result) {
делаете свои дела
если нужно продолжить отправку return true;
если нужно прервать return false;

});

если нет посмотрите здесь js/core/src/core/Tygh/plugins/form_validator/index.js

Странно, в админке в полях профиля email отключен, а при отправке формы пишет Email обязателен…
Как исправить?

Это уже сам контроллер проверяет тут

app/controllers/frontend/profiles.php

Подсуньте что-нибудь в email в скрытом инпуте или пре контроллере, а в хуках в функции fn_update_user уже уберете его

1 лайк

Спасибо.