Dynamic add fields let a user add multiple repeating rows of related data inside a form, without needing to leave the page or open child records manually. They power any form with a “+ Add another” button — line items, attendees, contacts, dependants, attachments — wherever the user might need one or many.
Where They're Used
- Invoices and quotes: Each line item is a row with product, quantity and price.
- Event registrations: Each attendee row captures name, dietary requirement and ticket type.
- Travel bookings: Each traveller row captures passport details and meal preference.
- Contact forms: Each emergency contact row captures name, relationship and phone.
How They Differ from Sub-Tables
A dynamic add field is rendered inside the parent form. The user fills in everything on one page and saves it all together. By contrast, a related child table is opened as a separate edit dialog. Dynamic add fields are better when:
- You expect a small number (typically 1–20) of repeats.
- The repeating fields are simple — not themselves complex forms.
- You want the user to see and confirm all rows at once before saving.
Behaviour Highlights
- Rows can be reordered by drag-and-drop (if enabled).
- A minimum and maximum number of rows can be enforced (e.g. at least 1 line item, no more than 50).
- Cross-row calculations are supported — e.g. a total field outside the repeater that sums quantity × price across all rows.
- Validation is per-row: each row must pass its own field requirements before the form submits.
Tip: If your repeater would have 30+ rows or each row has 10+ fields, switch to a paginated child table — performance and usability both improve.