Checkboxes Field CSS Selectors

Checkboxes Field CSS Selectors

ListItemsLabelsInputs

List
Unordered list used to structure all of the individual list choices

example: standard checkbox list (ul) – applies to all forms
1body .gform_wrapper .gform_body .gform_fields .gfield .gfield_checkbox {border: 1px solid red}

example: standard checkbox list (ul) – applies just to form ID #1
1body #gform_wrapper_1 .gform_body .gform_fields .gfield .gfield_checkbox {border: 1px solid red}

example: standard checkbox list (ul) – applies just to specific checkbox list (based on the unique parent element ID – replace 「XX_X」 with your actual element ID)
1body .gform_wrapper .gform_body .gform_fields #field_XX_X.gfield .gfield_checkbox {border: 1px solid red}

Items
Individual list choices

example: standard checkbox list item (li) – applies to all forms
1body .gform_wrapper .gform_body .gform_fields .gfield .gfield_checkbox li {border: 1px solid red}

example: standard checkbox list item (li) – applies just to form ID #1
1body #gform_wrapper_1 .gform_body .gform_fields .gfield .gfield_checkbox li {border: 1px solid red}

example: standard checkbox list item (li) – applies just to specific checkbox list item (based on the unique parent element ID – replace 「XX_X」 with your actual element ID)
1body .gform_wrapper .gform_body .gform_fields #field_XX_X.gfield .gfield_checkbox li {border: 1px solid red}

Labels

example: standard checkbox choice label – applies to all forms
1body .gform_wrapper .gform_body .gform_fields .gfield .gfield_checkbox li label {border: 1px solid red}

example: standard checkbox choice label – applies just to form ID #1
1body #gform_wrapper_1 .gform_body .gform_fields .gfield .gfield_checkbox li label {border: 1px solid red}

example: standard checkbox choice label – applies just to specific checkbox label (based on the unique parent element ID – replace 「XX_X」 with your actual element ID)
1body .gform_wrapper .gform_body .gform_fields #field_XX_X.gfield .gfield_checkbox li label {border: 1px solid red}

Inputs

example: standard checkbox input (checkbox) – applies to all forms
1body .gform_wrapper .gform_body .gform_fields .gfield .gfield_checkbox li input[type=checkbox] {border: 1px solid red}

example: standard checkbox input (checkbox) – applies just to form ID #1
1body #gform_wrapper_1 .gform_body .gform_fields .gfield .gfield_checkbox li input[type=checkbox] {border: 1px solid red}

example: standard checkbox input (checkbox) – applies just to specific checkbox list inputs (based on the unique parent element ID – replace 「XX_X」 with your actual element ID)
1body .gform_wrapper .gform_body .gform_fields #field_XX_X.gfield .gfield_checkbox li input[type=checkbox] {border: 1px solid red}

Checkboxes

Checkboxes

SummaryCommon SettingsGeneral SettingsNotesMerge TagsUsageModifiersCalculations

Summary

The Checkboxes field allows you to present one or many checkboxes which allow multiple selections. It is available under the Standard Fields section within the form editor.

Checkboxes field as displayed in the Field Library

Checkboxes field as displayed in the Form Editor.

Important: If your choice labels contain any HTML or special characters such as ampersands, commas, hyphens or brackets of any type, you MUST enable the show values feature and give each choice a simple and unique value which does not contain any special characters. Failure to configure values could cause issues for features such as calculations, conditional logic, dynamic population, and validation.

Important: Once the form has entries the choices should not be changed. Adding, removing, re-ordering, or renaming checkbox choices will result in the input ids associated with the choices changing which could break the connection to the choices already stored in the existing entries and prevent them being exported.

Common Settings

This field uses only common field settings for the Appearance and Advanced settings. For a description of each of the common field settings, refer to this article. Below you will find a description of specialty settings that are particular to this field.

General Settings

SettingDescriptionChoicesAdd Choices to this field. You can mark each choice as checked by default by using the checkbox that appears to the left of each choice. Add a new choice by clicking the PLUS icon and delete a choice by clicking the DELETE icon.Show ValuesChecking this option will allow you to specify a value for each choice. Choice values are not displayed to the user viewing the form, but are accessible to administrators when viewing the entry.Bulk Add / Predefined ChoicesClicking the Bulk Add / Predefined Choices allows you to select a category and customize the predefined choices or paste your own list to bulk add choices. See note 1.Enable 「Select All」 choiceChecking this adds a Select All option to the top of the checkboxes list which allows the user to select all of the available list items.

Notes

1. See this article for more information.

Merge Tags

For more information on the use of merge tags, refer to these articles.

Usage

{Field Name:2.1:modifier1}

Notes:

The field name is optional.The second parameter is the field ID. If a single number, it can be used to get the value of the field ID. If multiple numbers separated by a period, it will get a specific selection within that field. For example, 2 will return the result of field ID 2, while 2.1 will return the first checkbox within field ID 2.The third, and any subsequent parameters are used for modifiers. These are separated by a colon, and may contain multiple modifiers if applicable.

Modifiers

ModifierDescription:valueDisplays the actual value of the checkbox rather than the value label.:currencyDisplays the value as currency.:priceSame as :currency.

Calculations

If you』re going to use this field type in a calculation formula, please check Number Formatting Rules in the Calculations doc page.

Checking Your Environment Details

Checking Your Environment Details

Accessing the System Status PageSending System ReportsUnderstanding the System Status PageGravity Forms EnvironmentGravity FormsAdd-OnsDatabaseWordPress EnvironmentWordPressActive ThemeActive PluginsServer EnvironmentWeb ServerPHPMySQL

As of Gravity Forms 2.2, it』s possible to see full details on your hosting environment from directly within Gravity Forms. Investigating your environment details is one of the first and most helpful steps when troubleshooting an issue.

Accessing the System Status Page

To access your environment details, simply access the System Status page. To do so, hover over Forms on the left side menu in your WordPress admin, and click on System Status.

If the System Status menu item is missing on your site there are two possibilities:

The site is running a version of Gravity Forms which is older than 2.2, please update to the latest version.Your user role does not have the gravityforms_system_status capability enabled. You can use a role management plugin such as Members to enable the plugin capabilities for roles.

Sending System Reports

System reports can easily be sent by simply clicking on the Copy System Report button at the top of the page. Upon clicking on it, a fully text-based copy of the report will be automatically sent to your clipboard and can be pasted anywhere. This is especially useful to send when submitting a support request.

If you find the system report does not copy to the clipboard you will want to run through a theme/plugin conflict test.

Understanding the System Status Page

Within the System Status page, there are several items listed and grouped together.

Gravity Forms Environment

This section contains various information that directly impacts Gravity Forms.

Gravity Forms

ItemDescriptionVersionThe version of Gravity Forms that is currently active.Upload folderThe absolute path to the folder that Gravity Forms will use for file uploads.Upload folder permissionsThe permissions that Gravity Forms has for your upload folder. It should display Writeable. If not, you may have issues with file upload fields.Output CSSIndicates if outputting of the form stylesheets is enabled or disabled.Output HTML5Indicates if the form fields should use the available HTML5 input types.No-Conflict ModeIndicates if extraneous scripts and styles are being prevented from inclusion on Gravity Forms admin pages, reducing conflicts with other plugins and themes.CurrencyThe currency code the forms are configured to use.Background updatesIndicates if Gravity Forms can download and install bug fixes and security updates automatically in the background.LocaleThe locale code being used by WordPress when loading the Gravity Forms translations.

Add-Ons

This section will list all Gravity Forms add-ons currently activated on your site, as well as the creator. Official add-ons will state the creator as Gravity Forms. 3rd party add-ons will show a different creator.

Database

Inside the Database section, information relating to Gravity Forms database tables will be listed. This includes the version number of the Gravity Forms database, as well as the status of the database tables used by Gravity Forms.

Within this section, you can also re-run the database upgrade. If you』re having database-related issues, especially after an update, re-running the database upgrade can often solve them.

WordPress Environment

This section contains various details about your WordPress installation.

WordPress

This section includes general information about your WordPress installation.

ItemDescriptionHome URL and Site URLThe URLs assigned to your WordPress site. Typically, unless you have a specific reason otherwise, these should be the same.WordPress VersionThe version of WordPress that you are running.WordPress MultisiteIf this is a multisite installation, it will appear here.WordPress Memory LimitIn addition to your memory limit within your PHP configuration, WordPress also sets its own memory limits. The WordPress Memory Limit list item will display the currently set memory limit, as defined within WordPress.WordPress Debug Mode, WordPress Debug Log, and WordPress Script Debug ModeIf debugging is enabled on the site using the WP_DEBUG constant, the mode will be displayed, as well as the log may be enabled. If WP_DEBUG is not turned on, they will both display No.WordPress CronIndicates if the cron is enabled or has been disabled using the DISABLE_WP_CRON constant.WordPress Alternate CronIndicates if the alternative, redirect based cron, has been enabled using the ALTERNATE_WP_CRON constant.Background tasksIndicates if your site is able to send a post request to it』s Admin Ajax URL using the WordPress HTTP API to trigger processing of queued tasks. If there is an issue an error message or status code from the test request response will be displayed.

Active Theme

The active theme section will provide information regarding the active theme and it』s parent theme (if applicable).

Active Plugins

The active plugins section will provide information regarding what plugins are installed and activated on your site, along with the version number.

Server Environment

These status items display information related to your server and hosting environment. Often times, you will need to contact your web host if there are any issues here.

Web Server

The Web Server section displays information about the software that serves your pages, typically Apache or NGINX. It also includes the document root that the site is being displayed and the port that it is running on (usually ports 80 or 443).

PHP

Inside the PHP section, you』ll see information related to PHP options that may impact your site. The most notable of these is Version, which should be as high as possible (PHP 7.1 or newer is recommended).

We won』t go over all of the items displayed here, but more details related to PHP configurations can be found on the PHP documentation site.

MySQL

Lastly, details on the MySQL database are displayed, such as the version, character set, and collation.

Setting Up the CleverReach Add-On

Setting Up the CleverReach Add-On

Pre-RequisitesSetupAdd-On Framework Hooks

Pre-Requisites

Download and install the add-on
A CleverReach account
The PHP extension PHP Soap must also be present on your web server. Most web hosts will already have this PHP extension installed and enabled.

Setup

Log into your WordPress admin dashboard.
On the left side navigation menu, hover over Forms and click on Settings.
From this page, click the CleverReach tab.
Enter your Customer ID, Username, and Password. This is obtained from CleverReach.
Click Update Settings. If you』ve entered your account information correctly, you will be notified by green check marks beside each box. If you do not see green check marks, please double check this information and try again.

Once you have entered your API key, you』re ready to begin creating a feed for the CleverReach Add-On.
Add-On Framework Hooks
Because the CleverReach Add-On is built using the Add-On Framework it also inherits any hooks available in the framework methods it uses such as:

gform_short_slug_field_value for changing a field value before it is passed to CleverReach.

CleverReach Change Log

CleverReach Change Log

1.7 | 2020-09-081.6 | 2020-03-121.5 | 2019-02-191.4 | 2018-04-021.3 | 2017-05-161.2 | 2016-07-291.1 | 2015-06-021.0 | 2015-05-19

1.7 | 2020-09-08

Added support for Gravity Forms 2.5.
Fixed a PHP warning which occurs when accessing an existing feed after the add-on is connected to a different CleverReach account.

1.6 | 2020-03-12

Added translations for Hebrew, Hindi, Japanese, and Turkish.
Fixed a PHP 7.4 notice which occurs on the feed configuration page when saving a new feed.
Fixed an issue with the double opt-in email not being sent if the personal data settings for a form are set to prevent storage of user IP addresses.
Fixed a PHP warning which could occur during form submission.

1.5 | 2019-02-19

Updated Add-On to use CleverReach REST API.

1.4 | 2018-04-02

Added security enhancements.
Added Double Opt-In support when updating contact.
Added License GPL to plugin header.
Updated Plugin URI and Author URI to https.
Fixed a PHP warning which could occur during feed processing if Double Opt-In was enabled.
Fixed fatal errors which could occur when getting the choices for the Group and Double Opt-In settings.
Fixed a PHP warning which occurred when the CleverReach API did not return the requested group details.

1.3 | 2017-05-16

Updated warning message when SOAP extension is not present.
Fixed strings for translations.
Fixed fatal error which could occur when initiating the CleverReach API.
Fixed PHP notice.

1.2 | 2016-07-29

Added feed duplication support.
Added gf_cleverreach() for easily getting a CleverReach instance.
Added support for delaying feed processing until payment by PayPal Standard is successfully completed.

1.1 | 2015-06-02

Added Double Opt-In support.
Added Spanish (es_ES) translation.

1.0 | 2015-05-19

It's all new!

CleverReach Feed Meta

CleverReach Feed Meta

IntroductionUsagePropertiesCustom Field Properties

Introduction
The Feed Object meta for the CleverReach add-on is an associative array containing the properties which determine how the add-on should process the form submission.
12345678$feed['meta'] = array(    'feed_name'                               => 'Your Feed Name',    'email'                                   => '2',    'feed_condition_conditional_logic'        => true,    'feed_condition_conditional_logic_object' => array(        'conditionalLogic' => array(),    ),);
Usage
We recommend accessing the $feed meta using the rgar() or rgars() functions, e.g.:
1$conditional_logic_enabled = rgars( $feed, 'meta/feed_condition_conditional_logic' );

Properties

feed_name string
The feed name which appears on the add-ons feeds tab.

group string
The CleverReach Group ID this feed will add the contacts to.

email string
The ID of the form field containing the user』s email.

custom_fields array
A multidimensional array containing the CleverReach custom fields. See Custom Field Properties.

double_optin_form string
The ID of the CleverReach form which will be used when exporting to CleverReach to send the opt-in email.

feed_condition_conditional_logic boolean
Is the feed condition (conditional logic) setting enabled. Default is false.

feed_condition_conditional_logic_object array
An associative array containing the conditional logic rules. See the Conditional Logic Object for more details.

Custom Field Properties
1234array(    'key'   => 'first_name',    'value' => '1.3',)
Each custom field is an associative array containing the following properties:

key string
The CleverReach custom field name. Lowercase and spaces replaced with underscores.

value string
The ID of the form field or entry meta item containing the value for this custom field.

Common Field Settings

Common Field Settings

SummaryGeneral Settings SectionField LabelDescriptionInput MaskMaximum CharactersRequiredNo DuplicatesAppearance Settings SectionPlaceholderField Label VisibilityDescription PlacementCustom Validation MessageCustom CSS ClassField SizeAdvanced Settings SectionAdmin Field LabelDefault ValueEnable AutocompleteEnable Password InputVisibilityAllow field to be populated dynamicallyConditional Logic Fly-outScreenshots

Summary

When editing a form, many of the fields you use will offer the same group of settings. This article helps explain the most common ones. If the setting you are interested in is not listed here, then refer to the more specific user guide documentation for the Field Type you are using.

Fields usually offer three Field Settings sections available in the right hand sidebar when a field is selected:

GeneralAppearanceAdvanced

Additionally, it is common for fields to also present a conditional logic fly-out in the right hand sidebar.

The settings most commonly offered in each of these sections are listed below.

General Settings Section

See screenshots below.

Field Label

This is the name by which this field is displayed. The field label is shown on the front-end (that is, displayed to people when they fill out a form you have embedded on your site), as well as used to refer to that field within form administration areas where choosing the field is required. Such as for conditional logic, merge fields, or even in the Entries list.

Description

An extended text area used to annotate the purpose or instructions on filling this field. If included, it will be displayed with the form.

Input Mask

Available for Single Line Text fields and Post Custom fields only. When this setting is toggled to on, the form administrator may specify a specific format to be accepted in this field, choosing from standard masks provided or defining a custom one. The field will then provide visual guidance to form users on the expected format, as well as enforce the input format during entry validation.

See this article for more information on input masks.

Maximum Characters

Determines the maximum number of characters that can be entered in this field. Offered for longer fields such as the Paragraph field.

Required

If a field is marked as required, then the form cannot be submitted without it.

No Duplicates

Select this option to limit user input to unique values only. This means that for a form submission to be accepted, the value entered must not already exist in the form entry database for that field.

Appearance Settings Section

See screenshots below.

Placeholder

A placeholder is text shown inside the blank field to help the user know what is expected. If the field is left blank at submission time, the placeholder text is not saved with the entry. That field will be blank in the Entry table.

Field Label Visibility

Choose from the drop down to determine if you want the field label to be shown on the form. If shown, the placement of the label is inherited from whatever you have specified within the Form Settings.

Note: hiding the field label can make it more difficult for users to fill out your form. As visible field labels improve accessibility, a warning is displayed when you activate this setting to hide. See this accessibility article for more details.

Description Placement

Choose where you would like the description to appear, own relation to the input field.

Custom Validation Message

This is a custom message that displays when an attempted entry fails validation for this field. The message appears in red, below the field upon an invalid submission. Note that all fields that are validated will generate a simple, default error message. Use this setting if you wish to customize it.

Example of a custom validation message.

Custom CSS Class

Add any custom CSS class you have defined if you wish to apply it to this field and override the default style.

Field Size

The choice of small, medium or large affects the width of the entry area for most fields. For a paragraph field, it affects the height. By default, it is large.

Advanced Settings Section

See screenshots below.

Admin Field Label

This is the field label that will be shown within the administrative interfaces. It does not affect what a form visitor would see.

Default Value

The value will be used to pre-populate the field when initially loaded and presented to visitor. If unchanged during form submission, it will also be saved with the Entry. A merge tags marker is also presented next to this field, meaning that merge tags can also be utilized to determine the default value.

Enable Autocomplete

Select this setting to let browsers help a user fill in a field with autocomplete. You can enter a single autocomplete attribute or multiple attributes separated with a space. Learn more about autocomplete in the accessibility documentation .

Enable Password Input

Toggling this setting on means that the text typed in this form field will be hidden to the user with a default 「•」 character.

Visibility

Controls whether or not the field will be visible to a form viewer. Options include:

Visible: default option, field shows normally.Hidden: this field will be hidden from a form viewer, but will still exist. This is useful when you need the field to execute or be used in some functionality (such as capturing a piece of capture information, or be utilized in conditional logic elsewhere in the form), but do not want the form viewer to put an input here.Administrative: the field is not visible to a form viewer and will not add any functionality to the form. It can still affect an entry though in that default values will be captured in the Entry table.

Allow field to be populated dynamically

Checking this option allows data to be passed to the form and pre-populate the field dynamically. Data can be passed via Query Strings, Shortcode, Block Settings, and/or Hooks. See this article for more information.

Conditional Logic Fly-out

Open the conditional logic fly-out and click the toggle Enable Conditional Logic to turn on conditional logic. The logic rules added here will control whether this field is shown or hidden. If disabled, this field will be shown by default. See this article for more information. This fly-out will only be available when fields that support conditional logic exist on the form.

Screenshots

General SectionAppearance SectionAdvanced Section

Common Form Issues

Common Form Issues

Why is 『display:none』 being added and my form isn』t showing up?Why do I see paragraph tags or line breaks after each element in my form?Why do I have extra space above and below my form?

Why is 『display:none』 being added and my form isn』t showing up?
This is because you have conditional logic being used on your form. Anytime conditional logic is present the entire form is set to display: none; and then JavaScript is used to only show the fields that should be shown.
However, this requires Gravity Forms being able to output the necessary JavaScript using the WordPress built in enqueue function which outputs the JavaScript in your footer.
This is due to one of two likely issues:
1.) Your theme probably does not have this function call in your theme』s footer.php file:

This function call, which all themes should have, but many people forget to include, enables plugins to output code in the footer of a theme dynamically. If it isn』t present, the theme can』t output the necessary code.
2.) Your theme has a JavaScript error or conflict causing Gravity Forms』 JavaScript not to function correctly. Please go through the theme and plugin conflict testing steps to isolate the issue.
Between these two important pieces of information, you』ll likely find the source of why your form is not displaying properly.
Why do I see paragraph tags or line breaks after each element in my form?
You』ll see these when another plugin or theme causes them. They aren』t added by Gravity Forms. To fix it, you』ll want to go through our theme and plugin conflict testing
Why do I have extra space above and below my form?
Usually this happens when you copy the form shortcode directly from the help page and paste it into the visual editor. Often it pastes the tags in the markup which then causes the formatting issues.Edit the page the form resides on, view the content in the editor using the HTML tab and if you see the tags around your form shortcode, simply remove them.
Complete information on embedding forms can be found in the documentation by clicking the link below:
https://docs.gravityforms.com/embedding-a-form/

Conditional Logic in Gravity Forms Confirmations

Conditional Logic in Gravity Forms Confirmations

IntroductionRequirementUsage NotesHow To Setup A Conditional Confirmation

Introduction

Sometimes you may want to send a user to a different page or display different information to them based on what they submit within the form. In this article, we will show you how to use conditional logic within your form confirmation options you can display information to users that is dependent on their selections within the form submission.

Requirement

This article assumes that you have already created your form, as well as created an additional confirmation message.

Usage Notes

A default confirmation is established automatically at the creation of every new form.Conditional logic is only available in confirmations you create, and is not available for the default confirmation.The default confirmation cannot be turned off. This is intended to always ensure one confirmation can execute. The default confirmation will execute only if no other confirmation is executed.If a form submission would trigger multiple active conditional confirmations, then only the first one will be executed.

How To Setup A Conditional Confirmation

Within your form confirmations page, at the bottom, you should notice a heading labeled Conditional Logic.The first field you will see is a dropdown in which you can switch between All and Any. Setting this to All will require all rules to match before the confirmation is executed. Conversely, setting it to Any will only require one of the rules to match.Below this, you will see another set of fields. The first field will list the form field name, the second field is the comparison operator, and the third field is the value. For example, if you wanted to show a different confirmation for users that selected a particular radio button, you would select the field that contains the radio buttons, then is, and finally the individual radio button option that you want to base the confirmation on. In this scenario, users will receive the custom confirmation only if the particular radio button First Choice is selected.If you want to add additional conditions, simply press, the 「+」 button to the right of your first condition.

Nested Conditional Logic Limitations

Nested Conditional Logic Limitations

DisclaimerWhen will nested conditional logic work?When will nested conditional logic not work?WorkaroundsBulletproof MethodDrop Down PlaceholdersFinding nested conditional Logic

Disclaimer

Gravity Forms does not officially support nested conditional logic. This means a field should not have conditional logic based on a field that also has conditional logic. Some clever folks have come up with workarounds or specific scenarios they feel work, but these are not officially supported by us.

With that in mind, here is some info that may or may not be of use!

When will nested conditional logic work?

Nested conditional logic will work if the conditional field does not have a default value, is not dynamically populated, and, if the field is a Drop Down, it uses a placeholder.

When will nested conditional logic not work?

Nested conditional logic will not work if:– the conditional field has a default value– the conditional field is dynamically populated– if the conditional field is a Drop Down and does not use a placeholder.

When Gravity Forms hides a field via conditional logic, it resets the field』s initial value. Conditional logic dependent on this field will be evaluated with that reset value rather than an empty value which is unexpected.

Workarounds

Bulletproof Method

The best method to support nested conditional logic is to add additional conditions to account for the nested dependency.

For example:

Field B is conditionally dependent upon Field Ayou want Field C to be conditionally dependent upon Field B

In this case, you would set up Field C』s dependence on B, but also add the conditions that you configured for Field B onto Field C as well. In this was you make Field C explicitly dependent on both Field B and Field A.

Conditional logic as configured for Field B

Conditional logic as configured for field C, in order to enforce the nested dependency.

Drop Down Placeholders

Nested conditional logic issues are most commonly exposed by Drop Downs. If the Drop Down does not have a choice with an empty value (such as a placeholder), the Drop Down』s value will be reset to that of the Drop Down』s first option when the field is hidden via conditional logic. Since the field is hidden, many users expect the value of the field to be empty and create nested conditional logic rules based on this assumption.

The simplest solution is to make sure your Drop Down has a placeholder. In this way, the Drop Down value will be reset to an empty value (via the placeholder) when hidden via conditional logic. Note: This does not address the issues with setting a default value and dynamic population mentioned above.

Finding nested conditional Logic

To check if your form has any nested conditional logic, copy and paste this script into your browser』s console on the form editor page.

123456789101112131415161718192021222324252627282930var deps = {}; for( var i = 0; i < form.fields.length; i++ ) {   var field = form.fields[i];  if( ! field.conditionalLogic ) { continue; }   if( typeof deps[ field.id ] === 'undefined' ) { deps[ field.id ] = []; }   for( var j = 0; j < field.conditionalLogic.rules.length; j++ ) {    var rule = field.conditionalLogic.rules[j];    if( jQuery.inArray( rule.fieldId, deps[ field.id ] ) === -1 ) {      deps[ field.id ].push( rule.fieldId );    }  } } for( var fieldId in deps ) {   if( ! deps.hasOwnProperty( fieldId ) ) { continue; }   for( i = 0; i < deps[ fieldId ].length; i++ ) {    var depFieldId = deps[ fieldId ][i]; // Does current dependent field have any dependencies?    if( typeof deps[ depFieldId ] !== 'undefined' ) {      console.log( 'Nested dependency found', '|', 'ID:', fieldId, '|', 'Label:', GetFieldById( fieldId ).label );    }  } } It will output a message for each dependency found. Nested dependency found | ID: 3 | Label: Field C