Drupal is a registered trademark of Dries Buytaert
drupal 11.3.7 Update released for Drupal core (11.3.7)! drupal 11.2.11 Update released for Drupal core (11.2.11)! drupal 10.6.7 Update released for Drupal core (10.6.7)! drupal 10.5.9 Update released for Drupal core (10.5.9)! cms 2.1.1 Update released for Drupal core (2.1.1)! drupal 11.3.6 Update released for Drupal core (11.3.6)! drupal 10.6.6 Update released for Drupal core (10.6.6)! cms 2.1.0 Update released for Drupal core (2.1.0)! bootstrap 8.x-3.40 Minor update available for theme bootstrap (8.x-3.40). menu_link_attributes 8.x-1.7 Minor update available for module menu_link_attributes (8.x-1.7). eca 3.1.1 Minor update available for module eca (3.1.1). layout_paragraphs 2.1.3 Minor update available for module layout_paragraphs (2.1.3). ai 1.3.3 Minor update available for module ai (1.3.3). ai 1.2.14 Minor update available for module ai (1.2.14). node_revision_delete 2.0.3 Minor update available for module node_revision_delete (2.0.3). moderated_content_bulk_publish 2.0.52 Minor update available for module moderated_content_bulk_publish (2.0.52). klaro 3.0.10 Minor update available for module klaro (3.0.10). klaro 3.0.9 Minor update available for module klaro (3.0.9). layout_paragraphs 2.1.2 Minor update available for module layout_paragraphs (2.1.2). geofield_map 11.1.8 Minor update available for module geofield_map (11.1.8).

hierarchical_select_ajax

4 sites No security coverage
View on drupal.org

The Hierarchical Select Ajax module provides a dynamic, AJAX-powered field widget and formatter for taxonomy term reference fields. It is designed to enhance the user experience when dealing with deep or complex taxonomy structures by loading child terms only when needed.

Key Features

  • AJAX-Powered Widget: Choose terms level-by-level using standard select elements that update dynamically via AJAX.
  • Customizable Depth: Limit the hierarchy depth to a specific level or allow full traversal.
  • Per-Level Customization:
    • Labels: Define unique labels for each level of the hierarchy (e.g., "Country", "State", "City").
    • Descriptions: Add specific help text for each level.
    • "No Selection" Labels: Customize the empty option text per level (e.g., "- Select a Country -", "- Select a State -").
  • Deepest Selection Support: Options to manage how values are saved based on the nesting level.
  • SHS-Style Formatter: Includes a Simple Hierarchical Select (SHS) style formatter for consistent display of the term hierarchy on the frontend.
  • Developer Friendly:
    • Exposes hooks (hook_hierarchical_select_ajax_element_alter and hook_hierarchical_select_ajax_settings_alter) to programmatically customize the element behavior and settings.
    • Clean, trait-based implementation for easy extension.
  • Lightweight & Fast: Only loads the terms required for the current selection context, minimizing initial page load.

Installation & Configuration

  1. Enable the module as usual.
  2. Go to the "Manage Form Display" tab of your entity (e.g., Content Type, Media Type).
  3. Select Hierarchical select ajax as the widget for your taxonomy term reference field.
  4. Click the cog icon to configure the hierarchy depth and per-level labels.
  5. (Optional) Go to the "Manage Display" tab and select Hierarchical select ajax SHS as the formatter to display the hierarchy.

Requirements

  • Drupal 9, 10, or 11.
  • Core Taxonomy module.

Similar Modules

While similar to modules like Simple Hierarchical Select (SHS) or Client-side Hierarchical Select, this module focuses on a robust backend AJAX implementation with granular per-level configuration and developer-centric extensibility.

Activity

Total releases
2
First release
Dec 2025
Latest release
3 weeks ago
Release cadence
84 days
Stability
100% stable

Releases

Version Type Release date
1.0.2 Stable Mar 24, 2026
1.0.1 Stable Dec 30, 2025