(formId?: string) => FormContextValue
Returns information about the specified form.
FormContextValue
Record<string, string>
Contains all the validation errors in the form.
The keys of the object are the field names and values are the error messages.
If the form contains nested data, the field errors are not nested --
the keys of the object will be the same as the name passed to the input itself.
(e.g. todos[1].title)
boolean
Whether or not the form valid.
(...fieldNames: string[]) => void
Clear the errors from all the specified fields.
() => void
Clears all the errors in the form.
(fieldName: string) => Promise<string | null>
Performs validation on the specified field and populates fieldErrors if there is an error.
Also returns the error message if there is an error.
This helper will also update errors for other fields in the form depending on the touched state of those fields.
- If another field no longer has an error, it will be cleared automatically.
- If another field's error has changed, it will be updated automatically.
- If another field has a new error, it will only add the error if the field has been touched or the form has already been submitted unsuccessfully.
() => ValidationResult
Validates the whole form and updates fieldErrors.
Also returns the ValidationResult object.
This is the same object you get from validator.validate when validating on the server.
string | undefined
The value of the action prop passed to the ValidatedForm component.
If no action prop is passed, this will be undefined.
string | undefined
The value of the subaction prop passed to the ValidatedForm component.
If no subaction prop is passed, this will be undefined.
boolean
Whether or not the form is currently submitting.
boolean
Whether or not a submit has been attempted.
This will be true after the first submit attempt, even if the form is invalid.
This resets when the form resets.
Record<string, any>
The default values of the ValidatedForm component.
In cases where the user has javascript disabled,
this can sometimes be something other than what is passed into the ValidatedForm directly.
Record<string, boolean>
Contains all the touched fields.
The keys of the object are the field names and values are whether or not the field has been touched.
If a field has not been touched at all, the value will be undefined.
If you set touched to false manually, then the value will be false.
(fieldName: string, touched: boolean) => void
Manually set the touched state of the specified field.
() => void
Resets the form, setting values back to default and clearing all errors and touched states..
Note: This same behavior can be achieved by calling reset on the form element itself
or by clicking a button with type="reset"
() => void
Submits the form, running all validations first.
Note: This is equivalent to clicking a button element with type="submit" or calling formElement.submit().
() => FormData
Returns the current form values as a FormData object.