|
Validation in a form works in layers, starting with a light format check in the browser that catches obvious mistakes as the user types. A typo suggestion catches `gmial.com`. A server-side call to a verification API catches addresses that look fine but do not exist. Each layer has its own UX decisions: when to show an error, when to only warn, what to do when the API times out.
|