The first impression you usually have as a user of a Web Application is when you fill out a web form. I'm amazed at the number of web forms out there that have zero validation or that wait for you to submit your form contents before telling you what problems that you might have.
My rule of thumb is that anything that is not validated is supported. Anything that can be validated prior to submitting the form must be. With the advent of Ajax, you can even validate data against your database prior to submission. Don't pick the lazy route – users appreciate the help!
Ntawm no yog ib co piv txwv:
- Email chaw nyob – I don't mind forms that make you fill out your email address twice to validate them, but the fact that they don't tell you whether or not they match or are constructed appropriately is inexcusable.
- Cov passwords – If you're going to make me type in a password twice, then please validate that the values are the same before posting the form.
- Lo lus zais muaj zog – If you require a certain password strength (combination of alphanumeric characters or cases), then provide some feedback for me while I'm typing my password in. Don't wait for me to submit before telling me it failed.
- Hnub – If you'd like the date in a m/d/yyyy format, then allow me to enter the information in a single field by typing those values and formatting them appropriately. If you want leading zeros, put them in after. It's okay to display one format and save another in your database.
- Hnub No Yog Hnub Tim - Sau rau kuv! Vim li cas koj thiaj li nug kuv sau rau hnub uas koj twb paub nws lawm ?!
- Hnub Tim Hom – If you have an international application, you can default a date format based on Internationalization of your application. Of course, it's good to have an option for users to override that option and select their own.
- Npawb Xov Tooj – taking Internationalization into consideration, these types of fields also can be simplified by formatting the telephone number in the interface, but saving it in another format that's efficient for your back-end. Don't make your users type in parenthesis, spaces, and dashes.
- Cov Lus Sau Ntau Ntev – if you limit the number of characters stored in your database, then DON'T let me type that many characters in! It doesn't even require difficult validation… it's just a setting on the textbox.
- Yam tsawg kawg nkaus Cov Lus Sau ntev - yog tias koj xav tau qhov tsawg kawg ntawv ntev, tom qab ntawd ua lub suab ceeb toom kom txog thaum kuv muaj cov cim txaus.
Here's an example of a Password Strength function from Geek Txawj Ntse: