Form
A powerful form component with client-side validation, AJAX submission, and seamless Extbase integration.
Features
- Optional client-side validation with Zod schema support
- AJAX form submission with automatic error handling
- Seamless Extbase controller integration
- Real-time field validation on blur and input
- Form state management (submitting, dirty, invalid, success, error)
- Works with all Field-aware components and basic HTML inputs
- Automatic field name prefixing for Extbase
Installation
typo3 ui:add form
Please copy the files manually from GitHub into your project.
Read more about installing Components and Primitives.
API Reference
The following tables cover the available props of the Fluid Primitives.
form
Submits and manages the form state. Renders a <form> element.
| Name | Description | Required | Default |
|---|---|---|---|
actionUri | stringThe resolved form action URI to submit to directly. | No | - |
action | stringThe Extbase action name used to build the form action URI. | No | - |
extensionName | stringThe Extbase extension name used to build the form action URI. | No | - |
pluginName | stringThe Extbase plugin name used to build the form action URI. | No | - |
controller | stringThe Extbase controller name used to build the form action URI. | No | - |
arguments | arrayThe Extbase arguments used to build the form action URI. | No | - |
pageUid | intThe target page UID used to build the form action URI. | No | - |
objectName | stringThe object name prefix used for nested form field names. | No | - |
object | mixedThe bound object used for form value mapping. | No | - |
method | stringThe HTTP method used for form submission. | No | 'post' |
Anatomy
<primitives:form>
<primitives:field.root>
<primitives:field.label />
<primitives:field.control asChild="{true}">
<!-- Your form input here -->
</primitives:field.control>
<primitives:field.error />
</primitives:field.root>
</primitives:form>