I have a form with various fields and a submit button
The submit action depends on some external data. While that data is being fetched, the submit action cannot be processed.
I am fetching that data on page load. I have 2 options:
- Disable only the submit button while the data is loading. The user can fill out the form, but if the data has not finished loading they will have to wait before submitting. Cons: The user might not understand why they button is disabled. The button is in a loading state before the user has interacted with it. If the loading is quick, it will look like the button is "flickering". Pros: the user can start inputting data during the loading
- Disable the whole form and show a loading indicator. Cons: Loading screens are annoying. User cannot start filling the form. Pros: Less confusing for the user?
- Fetch the data on submit. Cons: Cannot fetch in the background, so it might increase the submit delay. Pros: no loading indicator until the user has interacted with the submit button.
Is there a recommended approach?