UI Patterns and Techniques

Input Prompt


From http://orbitz.com

Use when:

The UI presents a text field, dropdown, or combo box for which user input is required. Normally you would use a good default value, but you can't in this case -- perhaps there is no reasonable default, for instance.

Why:

If the UI is self-explanatory, the user doesn't have to guess whether they have to deal with this control or not -- the control itself tells them.

Default values are helpful, but as a user scans the UI looking for things they have to do to proceed, they might skip right over a control whose value they really ought to set. (Remember that users don't fill out forms for fun -- they'll do as little as needed to finish up and get out of there!) An imperative "Fill me in!" is likely to be noticed by the user.

How:

Choose an appropriate prompt string, perhaps beginning with one of these words:
  • For a dropdown list, use Select, Choose, or Pick.
  • For a text entry control, use Type or Enter.

End it with a noun describing what the input is, e.g. "Choose a state," "Type your message here," "Enter the patient's name." Put this phrase into the control, where the value would normally be. (It shouldn't be a selectable value in a dropdown.)

Since the point of the exercise was to tell the user what they were required to do before proceeding, don't let the operation proceed until they've done it! As long as the prompt is still sitting untouched in the control, disable the button (or whatever) that lets the user finish this part of the operation. That way, you won't have to throw an error message at the user.

In The Design of Sites, van Duyne et. al. refer to this technique in their more general pattern "Preventing Errors."

Examples:


From Powerpoint

Input Prompt has been unusual in desktop applications, but it's as good an idea in this context as it is on the Web. Note its use on a WYSIWYG editor's canvas here -- it doesn't indicate a "required field" as such, but the application clearly communicates its intent to the user, who doesn't have to think hard about how to do what they most likely want to do.