Skip to main content
Kinetic Community

Display and Validation Options

Overview

Make your Onboarding form Dynamic with Validation and Display Options

Display and Validation

You never want to show the customer all the fields on a form, especially a complex form like onboarding. There are many examples of hiding fields either all the time or conditionally as needed.

Display

Every element has three options, Visible (default), Hidden, and Conditional (see below for more).

If Hidden or Conditional is selected the Display section is expanded so you can see the option selected.

Hidden also has an option to omit values when hidden.

In the case above, the section is hidden, but any default values for the First and Last Name questions are retained.

If the check box is unchecked, the values will still be in the field, but they are not submitted.

Validation

Validation determines that an answer to a question is required when a page in a form is submitted. Like Display it has three options, Always, Never (default), and Conditional (see below for more). Pattern is used to check the value of the answer against a regex pattern, and constraint is similar, but often used to check against a known limit like number of characters.

If Always or Conditional are selected the Validation section is visible when the element is selected.

Conditional

Conditional options for Display and Validation rely on options from other answers or environment variables from the form.

Create the Condition Expression

Basic information available:

Values - answers on the form

Form - Name and Slug

Identity - Username and other information

Kapp - Name, Slug, and other Kapp attributes

Space - Name, Slug, and other Slug attributes

Selecting a value or other option uses the following format: values('Last Name') where the value in the (' ') is the name of the question.

Other options use the name of the variable. For example Form name is form('name')

Values are used in javascript expressions to check for a true or false result.

In general, use three equals signs for comparison - values('Question Name')===Answer

For Check Box questions use a slightly different format because check box answers are stored as an array.

values('Check Box Options').indexOf("Option Name") > -1

When is the Condition checked?

Whenever any value on the page is changed, all related conditional expressions are checked.

If you have a section with a Display condition of values('Asset Type')==="Hardware", it will only be visible when the answer to the Asset Type question is set to Hardware.

Result

If the Condition evaluates to True the element is Displayed or Required respectively.

Pattern

Pattern is used to check a value against a regex expression. Here is a sample for email ^[\w-\.]+\@[\w\.-]+\.[a-zA-Z]{2,4}$

The pattern is checked on Submit.

Constraint

Constraint is similar to Pattern in that it is a restriction placed on a field. It checks the field against a javascript expression also on Submit. Only a true expression allows a Submit.

An example is a character count.

Goal

Ability to apply default and conditional settings for all question types