Skip to main content
Drupal is a registered trademark of Dries Buytaert
Release: OpenID Connect / OAuth client 3.0.0-alpha9 New alpha version released for module openid_connect (3.0.0-alpha9). Release: Opensolr Search 4.5.0 Minor update available for module opensolr_search (4.5.0). Release: Timelinr 1.0.1 Minor update available for module timelinr (1.0.1). Usage Milestone: Simplify Module simplify crossed 10,000 active installs. Usage Milestone: Views Reference Filter Module entityreference_filter crossed 10,000 active installs. Usage Milestone: Dropdown Language Module dropdown_language crossed 10,000 active installs. Usage Milestone: Paragraphs Browser Module paragraphs_browser crossed 10,000 active installs. Usage Milestone: OpenAPI Module openapi crossed 10,000 active installs. Usage Milestone: Decoupled Router Module decoupled_router crossed 10,000 active installs. Module Revived: Entityqueue Buttons 1.1.2 Module entityqueue_buttons updated after 8 months of inactivity (1.1.2).

Dependent list

79 sites No security coverage Drupal 10–11
View on drupal.org

This module allows fields on a form to dynamically update their options based on the selection made in a previous "parent" field. It supports list fields and filters options in real time using AJAX.

What This Module Does

Screenshots below show how the child field options change when a different parent value is selected.

Figure 1: Acquisition selected

Figure 2: Appropriation selected

When editing an entity (e.g. a node or paragraph), a dependent list field shows different options based on the value chosen in a "parent" list field. For example:

  • Parent field: "Event main type" (Acquisition, Appropriation, Archaeology & fieldwork, etc.)
  • Child field: "Event subtype" -> shows Auction, Bequest, Purchase, etc. when Acquisition is selected; Colonial appropriation, Confiscation, Destruction, etc. when Appropriation is selected; etc.

The module works with list fields (list_string, list_integer, list_float) and supports both select dropdowns and radio/checkbox widgets. Options are filtered in real time via AJAX when the parent value changes.

How to Use

  1. Create two list fields on your content type (or other entity type):

    • A parent field (e.g. "Country") with its allowed values.
    • A child field (e.g. "City") with all possible values.
  2. Configure the child field as dependent:

    • Go to Structure -> Content types -> [Your type] -> Manage fields.
    • Edit the child field (e.g. "City").
    • Open the Dependent list configuration section.
    • Choose the Dependency field (e.g. "Country").
    • In the table, for each parent value, check which child options should be shown.
    • Save the field.
  3. Use the form:

    • When creating/editing content, select a value in the parent field first.
    • The child field options will update automatically based on your configuration.

Requirements

  • Drupal 10 or 11
  • options and field_ui modules

Testing Note

Testing has been done primarily with dropdown (select) lists. Radio buttons and checkboxes may not be fully tested; use with those widgets at your own discretion.

Spell Checking (CSpell)

Run CSpell locally before pushing:

./scripts/cspell.sh

Or with npx: npx cspell . (from the module directory).

Project-specific words are in .cspell-project-words.txt. Add new valid terms there as needed.

Depends on

Dependencies of the latest stable release

  • field_ui Drupal core
  • options Drupal core

Required by

Tracked projects that depend on this one

No tracked projects depend on this one yet.

Activity

Tracked releases
7
Tracked since
Feb 2026
Latest release
2 months ago
Releases (12 mo)
7 ▲ from 0
Maintenance
Active

Release Timeline

Releases

Version Type Core Release date
1.3.1 Stable 10–11 Jun 9, 2026
1.3.0 Stable 10–11 Apr 9, 2026
1.2.0 Stable 10–11 Mar 9, 2026
1.1.0 Stable 10–11 Mar 5, 2026
1.0.0 Stable 10–11 Feb 23, 2026
1.0.0-alpha1 Pre-release 10–11 Feb 22, 2026
1.x-dev Dev 10–11 Feb 22, 2026