Рейтинг:0

Webform Conditional based on previous webform entry

флаг us

I have a webform that we have people fill out two times - for a pre-test and a post-test and I am looking for a way to determine if a pre-test has been taken an if so, set a specific value on form element.

Currently we have people manually select whether they are taking the pre-test or post-test in a webform element, but they are not doing so very accurately. Given we have the data to know that, I am hoping to be able to determine that automatically in a webform field.

Here are some more details:

  • We gather a unique participant id (c_ID)
  • Based on that participant ID I am hoping to validate if a previous webform submission with that participant ID exists.
    • If not: Provide a value of "pre-test"
    • If so: Provide a value of "post-test"

Does anyone have any recommendations on how something like this could be done?

флаг in
Являются ли материалы до и после теста одним и тем же документом? Или это отдельные заявки? Оба представления имеют одинаковые поля? И откуда берется идентификатор участника?
флаг us
Спасибо @Joseph - как до, так и после тестирования используется одна и та же веб-форма с одинаковыми полями, но они заполняются в разное время, обычно с разницей в несколько дней или недель. В настоящее время, независимо от того, является ли это предварительным или пост-тестом, можно выбрать поле выбора в том же поле.Идентификатор участника вводится вручную лицом, заполняющим форму.
Рейтинг:1
флаг in

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

Затем создайте блок с текстовым полем, запрашивающим идентификатор участника. При отправке он будет искать отправку веб-формы, уже содержащую идентификатор. Тогда может произойти одно из двух:

  • Если отправки еще нет, перенаправьте пользователя на веб-форму с предварительно выбранным «предварительным тестом» (например, ?submission_type=предварительный тест)
  • Если отправка уже существует, перенаправьте пользователя на веб-форму с предварительно выбранным параметром «пост-тест». (например. ?submission_type=пост-тест)

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

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


В качестве альтернативы просто предоставьте две ссылки на веб-форму, одну с ?submission_type=предварительный тест привязан к его URL, а другой с ?submission_type=пост-тест. Тот же эффект за исключением проверки идентификатора участника и пользовательского блока (при условии, что пользователь выбирает правильную ссылку).

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.