Versions Compared


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

Here is an overview of how to add global logic to your form to prefill text fields, or hide or show questions based on website data. This function also allows for the email address to, rather than be stored in the website data, be stored in the email field of the form.

To add Global form rules follow these steps:

Step 1: Feedback forms

On the left-hand side click on ‘Data collection’, then ‘Feedback forms’. Click on the pencil to edit a form.

Step 2: Add elements

Add the elements you want the logic to apply to and save the form.

Step 3: Logic

Go to ‘BUILD' on the top bar, then, ‘LOGIC’ on the right-hand side.


If the header says Question logic instead of Form logic, you have selected an element in the builder on the left side and are adding logic to that element only. Click on the currently selected element to switch to the Form logic editor.

Step 4: Create logic

Set the logic. In this case, we fill the e-mail field with the URL parameter e-mail.

Then save the form and the logic is added.


If you want to check if it works, click on the preview button at the top right corner.

You will also be able to use this function when you hide the element you are prefilling. This allows you to collect the email address in the correct field instead of the website data field.

Easy html macro
contentByMode{"html":"<div id=\"surveyContent\"></div>","javascript":"var confluenceData = {};\nvar pageId;\nvar pageTitle;\n\ntry {\n confluenceData = JSON.parse(;\n var pageId = confluenceData.options.productContext[''];\n var pageTitle = confluenceData.options.productContext['page.title'];\n} catch(e) {}\n\nvar src = '';\n\nvar vars = {\n key:'211a4fdb96626776846147095cc335b448e20458', \n domain:'', \n divName:'surveyContent', \n button:false, \n use_collect:false, \n useQuerySelectorAll:false\n};\n\nvar s = document.createElement('script');\ns.async = 'async';\ = 'mopinionFeedbackScript';\ns.src = src;\ns.onload = s.onreadystatechange = function() {\n if (!s.readyState || s.readyState === 'loaded' || s.readyState === 'complete') {\n try {\n srv.loadSurvey(vars);\n } catch (e) {}\n }\n}\ndocument.head.appendChild(s);","css":""}