Declarative Form AJAX
No security coverage
This module provides a simpler way for form elements to be updated via AJAX in response to another element having its value changed.
Similarly to core's form states system, this uses a declarative syntax without any callbacks.
For example:
$form['controlling_element'] = [
'#type' => 'checkbox',
'#title' => 'Click me',
];
// This container is automatically updated when the user changes the value of
// the controlling_element checkbox.
$form['my_container'] = [
'#type' => 'container',
'#ajax' => [
'updated_by' => [
// Form parents of the controlling element.
['controlling_element'],
],
],
];
// Set this after build callback on the whole form to set up the AJAX
// behaviours.
$form['#after_build'][] = FormAjax::class . '::ajaxAfterBuild';
This project includes a demo module with working examples.
This is a proof of concept for a core issue, but can also be used as a contrib dependency.
Depends on
Dependencies of the latest stable release
No dependencies recorded for this project.
Required by
Tracked projects that depend on this one
No tracked projects depend on this one yet.
Activity
Releases
| Version | Type | Core | Release date | |
|---|---|---|---|---|
| 1.0.0 | Stable | May 23, 2024 |