Многошаговые формы Umbraco Contour — определение следующего шага на основе ввода пользователя

Я использую UmbracoCMS и Contour_1.1.12. При создании многошаговых форм мне нужно динамически решать, какая форма будет отображаться на следующем шаге, на основе определенных значений полей, которые пользователь указал на предыдущем шаге.

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

Большое спасибо.


person user1344502    schedule 19.04.2012    source источник


Ответы (3)


Я думаю, вы могли бы сделать это, подключившись к модели событий/рабочим процессам Contour. Документация для разработчиков Contour содержит некоторую полезную информацию о создании рабочих процессов и может быть загружена с здесь.

person Tim    schedule 24.04.2012
comment
Привет. Спасибо за ответ. подключение к модели событий Contour или рабочим процессам у меня не сработало. Мне удалось сопоставить значения полей, но не было возможности пропустить страницу счетчика. В настоящее время я делаю это, добавляя некоторый встроенный код в RenderForm.ascx и расширяя некоторые типы полей (Drowndownlist, RadioButton List). Я заменил фактический обработчик событий для Next и Previous Click своим собственным и вызвал фактический метод nextPage(sender, e) из своего обработчика после принятия решений на основе значений моих расширенных элементов управления. - person user1344502; 07.05.2012

У меня были некоторые трудности с подключением к модели рабочего процесса — я не уверен, что она полностью свободна от ошибок! Я бы использовал javascript/jquery, чтобы скрыть или отобразить следующее поле в качестве временной меры.

  1. загрузка страницы (http://api.jquery.com/ready/) -> показать раскрывающийся список/скрыть необязательный вопрос
  2. изменения раскрывающегося списка (http://api.jquery.com/change/) -> решить, показывать/скрывать необязательный вопрос
person amelvin    schedule 18.07.2012

Извините за поздний ответ, но вы всегда можете использовать USERCONTROLS для выполнения такой работы. Создайте пользовательский элемент управления в другом проекте, протестируйте их на основе вашего потока, а затем используйте его в umbraco, создав макросы.

см. эту ссылку, где объясняется, как использовать Это.

person Jigar Pandya    schedule 29.07.2014