2015-03-19 4 views
0

У меня есть форма, и я делаю некоторые вещи после проверки с помощью ajax на странице. Я делаю это с .on('afterValidate', function() И все работает хорошо, но только в первый раз. После этого форма не работает, если я буду работать с ней второй раз. Как я могу обновить проверку на соответствие и работать с этой формой снова и снова при отправке? Просто .on('submit' - это не очень хорошая идея, потому что форма работает дважды в этом режиме (форма отправляется два раза, потому что валидация из бэкэнд будет).Как обновить подтверждение yii2 для формы?

ответ

0

Я думаю, что для проверки AJAX на основе вы должны использовать еще одно событие:

ajaxComplete события запускается после завершения запроса AJAX для проверки AJAX основы. подпись обработчика событий должна быть:

function (event, jqXHR, textStatus) 

где

  • event: Случай объект

  • jqXHR: объект jqXHR

  • settings: статус запрос («успех», «немодифицированный», «ошибка», «таймаут», «ab ort "или" parsererror ").

Не может найти его в официальных документах, вы можете увидеть его here в var = events { ... }

Так что попробуйте .on('ajaxComplete', function (event, jqXHR, textStatus) { ... }) вместо .on('afterValidate', function ({ ... }).

+0

Благодарим вас за ответ. Моя форма работает без настроек ajax yii. Я просто создаю form.preventDefault() и после этого сделаю некоторый код и отправлю ajax в backend. Мой клиент хочет увидеть профиль «на лету». Редактировать –

+0

Можете ли вы также взглянуть на этот вопрос? http://stackoverflow.com/questions/29154544/how-to-solve-bad-request-400-unable-to-verify-your-data-submission-in-yii2 –

+0

«На лету» редактирование также возможно с помощью ajax validation. – arogachev

Смежные вопросы