I found some similar questions, but not related to the form while it's processing. Basically what I want to know is whether or not it's necessary to disable form inputs while it's sending it to the server on a web/mobile application.

For example, the user is creating his account and fill the form with his name, e-mail, etc. and then press the button "submit".

At this point, should I disable the inputs to prevent user to edit this information?

I don't know if it's worth the effort to do this, or if it will even have a positive impact on the UX. Currently what I do is to disable just the submit button. It changes it's state to have a loader, indicating it's processing and the click functionality is disabled as well, but only on the submit button.

How should I handle this situation while the form is processing?

1 Answer 1


Forms should not be editable after it has been submitted, but only if you expect the form will be used only once per user (ie creating an account).

One time form

Having a loader and a disabled submit button are good indicators, but I think it would be better to hide the entire form. For example, if someone is creating an account and clicks 'submit', the UI shows a progress indicator and after that a confirmation message. After that the user can continue in the flow (ie continue to login and use your product after registration).

enter image description here

Forms with more than one use

However, what if someone is editing content via a form? In this case the above is not a correct way to do it. In that case I would not use the label 'submit', but use 'save' or 'publish' instead. Users will only be able to save/publish again after processing has been finished. Disabling the form input is not necessary. Think about when you work in a text editor and save during editing. You can continue while the 'form' (your text) is being processed.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.