Since many people who design web forms have never designed any form of any kind in their lives before, it's hardly surprising that plenty of the results could do with a little improvement – and if you've spent any time on the web, you'll know just how annoying bad forms can be. In this article, then, we'll look at seven quick and easy ways to make your web forms much better.
1. Remember the Rest of the World.
This one is a call-out to American websites especially: don't forget that your site will have more than just American visitors! It's very insulting to be asked to register for something, only for the site to demand my state and zip code, leaving no space for me to choose any other country or enter a postal code in any other format than five digits. To save the trouble of the whole thing, I usually just go for 'California' and '90210' – a bad entry for that person's database, just because they didn't consider me when they designed their form.
2. Don't Use Huge Drop-Downs.
Likewise, though, if you are nice enough to let me choose a country, don't make me do it from an alphabetised list of every country in the world! The same thing goes for lists of states, counties, and so on. Drop down lists that are long enough to have scroll bars are just plain difficult to use and inconvenient – I'd much rather just type the name myself, thanks.
3. Always Offer Suggestions.
So someone can't get something they filled in on a form – their username or domain name or whatever was already taken. What do you do? Please don't just say "sorry, that one's taken, please try another". Come up with some useful suggestions of alternatives that are available, and let me choose them easily if I like them. Do try to be more imaginative than just adding numbers to the end, though, unless you want all your users to be called 'jane23436'.
4. Don't Punish Double Submitters.
There are some people, let's face it, who just aren't all that sure how the web works. They've been taught that you have to double-click computer things to make them work, and so double-click they do – on links, on buttons, on everything. At some point, one of these people is likely to click twice on your submit button. You should allow for this in advance, instead of punishing them for it with an error. You might even consider using Javascript to grey out the submit button once it's been pushed once, which solves the problem in most cases.
5. Stop Being So Picky.
Come on, now, do you really need my birth in dd/mm/yyyy format? Couldn't you figure out what I meant if I wrote a month out in words, or if I only put in a one-digit day, or a two-digit year? Of course you could. Don't throw my input back and ask me to fix things that a little server-side scripting could just as easily fix for me.
6. Display Warnings on the Page.
There are few things more annoying than websites which pop-up those little alert boxes, causing the computer to make a loud 'ding!' sound as they do so. If there's something I need to go back and fix, add the warning to the page itself, preferably with a red border or background to mark it out for my attention. Don't make me read a dialog box, click OK, and scroll back up myself to hunt for my mistake.
7. Only Ask for What You Need.
Last but not least, this is a rule that could make so many web forms so much better. If the information you're asking for isn't absolutely crucial to your dealings with me, don't ask for it. Every second I spend filling in a form is a second I spend getting more frustrated with your website, and more likely not to finish what I've started if something goes even slightly wrong. Your site should be set up to figure out as much as it can about me automatically. Don't ask what language I want to use – my browser tells you that in its HTTP headers. Don't ask which country I'm from – you can detect that with my IP address. Save me time, and I'll be much more likely to appreciate your site.