Jan Miksovsky’s BlogArchive2005 AboutRSSJSONContact

Leaving dependent controls enabled

In certain types of UI such as wizards and forms, it’s common to see UI like this:

Dependent_control_1

Here the text box is said to be a "dependent control", because its enabled state depends upon the current selected state of the radio buttons.

In situations like the one above, I personally prefer a design that leaves the text box enabled at all times. Instead of using the state of the radio buttons to drive the state of the text box, the design goes the other way: the state of the text box drives the state of the radio buttons.

Dependent_control_revised

This lets the user who wants to enter something in the text box do so directly, without having to first select the second radio button. In my experience, this technique makes the UI feel faster, avoids frustration ("Why can’t I type in the box?"), and doesn’t suffer any practical downside.