Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Plan your logic first (see below).

  2. Add all your questions and information in your form in the CMS.

  3. Progressively apply conditions and keep testing.

    • Hidden/visible logic can be applied on text fields (, not just on 'questions' (use the Advanced HTML element).

    • Specific logic is mainly used with radio and checkbox elements (e.g. Q2 is visible if the response to Q1 is 'no').

Info

Tip: build screen

When you are in the Build mode on a webform, you can see if conditional logic has been applied to a question or piece of text by looking in the ‘Conditional’ column. Click Edit to add logic.

image-20240919-012002.png

How to use conditional logic settings

When you’re in Edit mode of a form element (a question or piece of text), you’ll see a panel on the right of your screen. Click the ‘Conditions’ tab to apply settings.

...

From the screenshot above:

1 = State: Visible or Hidden (usually 'visible')

2 = All, Any or One (to add more than 1 element so that ‘all’ or ‘any’ are applicable, click the plus icon next to the element)

3 = Options include: Empty / Filled; Checked / Unchecked; Value is /Value is not

Info

Numbering: Because you’re showing and hiding information and questions according to answers chosen on previous questions, it doesn’t make sense to number the questions on the final published form or tool. But while planning and testing the logic and building the form or tool, it’s really useful. You can see on the table below how the numbering helps state the logic/conditions. It also helps when configuring logic and you need to select items on a long dropdown.

...

Plan your logic and create your test plan

People often set up a flowchart to map out the logic of a form or tool. I find it It's helpful to transfer this info all the information a document to plan the numbering and the logic.

This document can then be used as a test plan for your tester. You should always get other people to test your form thoroughly before you go live. You can create a share link of the page where you embedded the form for this.

Here’s an example:

Question / Text

Notes

Conditions / email handler

1 What is your full name?*

Text field, required

2 What is your email address?*

Email field, required

3 What is your phone number?

Phone number field (10 digits), not required

4 What type of enquiry do you have?

4a Question

4b Complaint

Radios, required

na

5 What is your complaint about?

Radios, required

Visible if Q4 value is 4b

5a Melbourne

5b Geelong

5c Phillip Island

6 The next question (specifically for questions about Melbourne)

Visible if
Q4 value is 4a
and
Q5 value is 5a

7 The next question (specifically for complaints about Melbourne)

Visible if
Q4 value is 4b
and
Q5 value is 5a

8 The next question (specifically for complaints about Geelong)

Visible if
Q4 value is 4b
and
Q5 value is 5b

9 Do you like dogs?

Radios, Yes/No

Visible if TBC

9 What is your enquiry about?

Radios, required Responses only for

Visible if Q9 Q4 value is filled9a Apples4a

Email handlers

Question + Melbourne

Complaint + Melbourne

If Q4 value is 4a
and Q5 value is 5a
then email apples@vicmelbourne-questions@vic.gov.au

If Q4 value is 4b
and Q5 value is 5a
then email applecomplaints@vicmelbourne-complaints@vic.gov.au9b Bananas

Email handlers

Question + Geelong

Complaint + Geelong

If Q4 value is 4a4b
and
Q5 value is 5b
then email bananas@vicgeelong-questions@vic.gov.au

9c Oranges

If Q4 value is 4a4b
and
Q5 value is 5c5b
then email oranges@vicgeelong-complaints@vic.gov.au

...

How to use conditional logic settings: questions and text

When you’re in Edit mode of a form element (a question or piece of text), you’ll see a panel on the right of your screen. Click the ‘Conditions’ tab to apply settings.

...

From the screenshot above:

1 = State: Visible or Hidden (usually 'visible')

2 = All, Any or One (to add more than 1 element so that ‘all’ or ‘any’ are applicable, click the plus icon next to the element)

3 = Options include: Empty / Filled; Checked / Unchecked; Value is /Value is not

Info

Numbering: Because you’re showing and hiding information and questions according to answers chosen on previous questions, it doesn’t make sense to number the questions on the final published form or tool. But while planning and testing the logic and building the form or tool, it’s really useful. You can see on the table below how the numbering helps state the logic/conditions. It also helps when configuring logic and you need to select items on a long dropdown.

Conditional logic settings for email handlers

Refer to Create a Drupal webform - email notifications.

...

The State for email handlers is either Enabled or Disabled. The conditions required that all 3 elements needed to have the set value in order for the handler to take the specified action (i.e. send to the specified email address).

...

Disable submissions

On the Settings tab of the form there’s a checkbox to disable submissions. This stops submissions being stored in the Drupal CMS. Submissions will only get emailed to the inbox specified.

...

Hide the submit button

If you’re building a decision tool and don’t want the user to submit their any responses you should hide the submit button.

...