Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 10 Next »

Below is a list of commonly used scripts.  Scripts here are intended to easily copy and paste into your applications for simplifying specific tasks.  You may need to alter component names (API Keys) to fit your specific forms.

Format a date in a Text Component

If you are looking for basic, manual date input, using a Text Component is often the simplest approach.  It can be helpful to assign an input mask to the component (99/99/9999) and a minimum length of 8.

Calculated Value Script
//Take in a date string and insert slashes
if(data.dob && data.dob.length == 8)
{
    var userDate = data.dob;
    value = userDate.slice(0,2) + '/' + userDate.slice(2,4) + '/' + userDate.slice(4,8);
}
else
    value = data.dob;


Capture a date based on signature input to a Text Component

If you wish to capture a date based on a user making a mark in a signature component, add a Text Component with an API Key of dateSigned and mark it disabled to prevent user manipulation of the field.  Add a Signature Component with an API Key of signature.

Calculated Value Script
//Assign a system calculated date based on data entry in another component.
var current = new Date(data.dateSigned);
if(data.signature && current.toString() === 'Invalid Date')
{
    var d = new Date();
    value = d.toLocaleDateString();
}
else
    value = data.dateSigned;

Add state control to check boxes to mimic radio button behavior

This script uses a Text Component (checkState) to preserve the last selected Checkbox Component.  Use two or more checkboxes (this example shows 3) and adjust the script accordingly.  In general, you should use a Radio Component to achieve this functionality.  This is an advanced script and it's very easy to miss updating a checkbox name, which can cause unexpected behavior.  Be sure to carefully inspect your script for errors when deploying.

Calculated Value Script
//Add state control to checkboxes to mimic radio button behavior.
if(data.check1 === true  && (data.checkState == '2' || data.checkState == '3'))
    {
        value = '1';
        data.check2 = false;
        data.check3 = false;
    }
else if (data.check2 === true && (data.checkState == '1' || data.checkState == '3'))
{
    value = '2';
    data.check1 = false;
    data.check3 = false;
}
else if (data.check3 === true && (data.checkState == '1' || data.checkState == '2'))
{
    value = '3';
    data.check1 = false;
    data.check2 = false;
}
else if (data.check1 === true)
    value = '1';
else if (data.check2 === true)
    value = '2';
else if (data.check3 === true)
    value = '3';
else
    value = '';
  • No labels