views:

849

answers:

8

Very simple question: should a dropdown list be used to populate state abbreviations? From my experience, I think most e-commerce sites do this so I would expect that it's acceptable. However, Jakob Nielsen has something to say about this.

I think I disagree; I use the tab key then type the first letter of my state. Heck, even if it wasn't the first entry, I've done this enough times, I would hit the letter repeatedly and get to what I need. I never need the scroll wheel or mouse.

Is there any additional concrete guidance out there on this particular question?

+1  A: 

I don't know about concrete guidance, but one alternative I would consider is using an autocomplete text box that forces you to choose from one of the available choices. I agree that a 50-item drop down list is too long and using autocomplete with enforced choice accomplishes the same purpose -- consistent data -- and has the advantage that it is much easier for the user to navigate. If you don't want to limit the choices to just US states you could drop the enforced choice and just let the autocomplete work as a suggestion with the user being able to enter free-form input.

EDIT: As @Martin suggests, I would probably have the autocomplete show the full state name, even if it only entered the abbreviation. This would solve issues of people getting the abbreviation wrong as well, though you could do the same thing in a drop down -- display the name with the abbreviation as the value.

tvanfosson
A: 

I'm willing to bet that half the users of online e-commerce sites don't know the abbreviations for the states. Think if you're shipping a gift to someone and you can't remember whether its MS, MO or MI. Dropdowns are fine.

Jason Punyon
An autocomplete -- as I suggested -- could show the full state name, but only fill in the abbreviation if desired. This would help offset the problem of people not knowing abbreviations either with or without a drop down.
tvanfosson
@tvanfosson: I agree, but the root of the question was about whether drop downs specifically were ok or not...I think I would probably implement something like you suggested.
Jason Punyon
There are drop down lists out there that have the full state names in them...as well as even some abbreviated lists that will respond to the typing of a full name (like "West Virginia" typed out will lead to "WV"). I think we are taking the idea of "the user is a complete idiot" a bit too far.
TheTXI
+2  A: 

I think this will become less of an issue now that most modern browsers scroll the drop down lists based on each consecutive letter you type, not just reading the first letter as they once did. So, If you type N-Y, the drop down list will scroll directly to NY and you do not have to hit N a bunch of times.

NYSystemsAnalyst
I was about to post this same thing. And "modern" means almost anything in the past decade that is not IE. I can tab-type-tab with a dropdown exactly the same as with a text box, and it has the added benefit of ensuring I don't pick an invalid one.
Sparr
I guess I deal with enough non-US residents that the idea of restricting to only states is *cough* foreign to me. A text box with a suitable autocomplete provides an ideal compromise.
tvanfosson
The field labelled "State" should accept things other than states? As a programmer, from any country, that idea sounds "foreign" to me. If you are shipping outside the USA, you should have a different form.
Sparr
I agree with Sparr there. If you say State, it usually implies U.S. State as not all other countries have states or refer to their equivalent as states. If you want to accept data from other counties, you should label the field state/territory or something like that.
NYSystemsAnalyst
A: 

I've never had an issue with state drop down boxes (and this is from someone routinely at the bottom in West Virginia). I've gotten into the habit of just tabbing and pressing W and then it will either recognize the "E" and give me the correct state, or it will not recognize the "E" and then I have to hit the down key once or twice (depending on sort order) to get the proper state.

So all in all I am looking at 5 key presses max to get to my state. I don't think it's that bad.

TheTXI
+1  A: 

Since a state is a two letter abbreviation, I wouldn't put a drop downlist, I would put a textbox, but I would validate it using AJAX or Javascript to warn the user about an error, right after he entered something wrong.

DropDown / Auto-completion (in my opinion) is useful when the data to enter is longer / more error-prone.

If you insist on using auto-completion or dropdown, you should put long state names, not just the abbrev.

Martin
A: 

How about a textbox with validation, and a drop-down list if the state abbreviation is invalid?

Adrian Archer
+1  A: 

I was going to post NYSystemsAnalyst's answer, but he beat me. I will instead add a caveat... If you use a dropdown list, it must be complete. Do not forget the obvious DC, or the less common but plausible PR or AE/AA/AP, or the rather improbable but still valid AS, FM, MH, MP, PW, and VI.

The official list

Sparr
+1  A: 

I think it depends on if you are asking a user to enter their own address or someone else's address (ship to address). Everyone knows their own state abbreviation, but may know all the state abbreviations.

So for entering your own address a textbox is the quickest and easiest way, but if you are asking the user to potentially enter someone else's address a drop down is probably best.

Of course, if you site has a combination of both types of address, you want your UI to be consistent and use the drop down for both. Also, if you are using a drop down, I would suggest using the state abbreviation and name (AZ - Arizona) when the drop down is expanded (but just show the abbreviation when it is collapsed).

John Myczek