Submit and Cancel Buttons
A guide to configuring the submit
and cancel
buttons for form pages, based on the schema.
When to Use
Use the submit
and cancel
properties to define the actions, labels, and triggers for the form's primary navigation buttons.
How It Works
- Both
submit
andcancel
are objects with the same structure and options. - They define the button label, translations, and the actions to perform when clicked.
- Actions are defined as triggers, which can include conditions and a variety of tasks (CRUD, navigation, etc.).
Options & Properties (per schema)
label
(string, required): The button text.labels
(object, optional): Translated versions of the label. Keys are language codes.triggers
(array, optional): Array of trigger objects, each with:label
(string, optional): Trigger label.labels
(object, optional): Translated trigger labels.breakAfter
(boolean, optional): If false, continue to next trigger even if this one succeeds.loop
(string, optional): Loop expression for repeated actions.if
(array, optional): Conditions for running the action.then
(object, required): Actions to perform (CRUD, files, note, navigation, etc.).
Usage Example
{
"submit": {
"label": "Save",
"triggers": [
{
"if": [["field_id", "=", "value"]],
"then": {
"crud": { "insert": { /* ... */ } },
"redirect": "dashboard"
}
}
]
},
"cancel": {
"label": "Cancel"
}
}
This example shows a submit button with a trigger and a simple cancel button. Both support the same structure and options.