Задать вопрос

Active Form, пошаговое заполнение, как отследить ошибки?

Добрый день коллеги. Делаю пошаговую форму оплаты. Сделал следующим образом. Есть одна большая модель формы, показывать не буду т.к. там все тоже что и в обычных.

А вот с видами трудности, не силен в JS, потому решил разбить шаги просто табами, может даже стоит сделать табы из Bootstrap-a. Загвоздка в том, что если возникают ошибки на втором и следующем шаге, он перебрасывает меня на 1 шаг и нужно прощелкивать до того момента где эти ошибки написаны.

Собственно я хочу просто отследить по ошибкам, и перебрасывать на нужный шаг. Но у меня ActiveForm и поля соответственно такого вида
<?= $form->field($model, 'phone')->textInput(['class' => 'p-phone'])->label(false) ?>


естественно они на выходе генирирует заветные три поля Лейбл(не в моем случае), инпут, ерор меседж.
как отследить ошибку конкретного поля ?

Ну и вообще, может есть у кого пример пошаговой формы на Yii2 ? В начале почитал много гайдов от первой юии и там большинство сделано на сессиях, у себя думал как вариант, сделать несколько форм, а в контроллере разбить это на шаги - но при таком подходе вернуться обратно нет возможности т.к. форма отвалидирована.

Переключатель шагов сделан вот так. На крутость не претендует, но встречные предложения поощряются ))
$(document).ready(init);
function init(){
    $('.twoStep').hide();
}

function hidePayCard(){
    $('.payment').hide();
    $('.twoStep').show();
}

function showPayCard(){
    $('.payment').show();
    $('.twoStep').hide();
}
  • Вопрос задан
  • 547 просмотров
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 1
qonand
@qonand
Software Engineer
мой Вам совет не изобретайте велосипед, есть множество расширения для решения этой задачи
https://www.google.com.ua/search?q=step+wizard+yii...
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы