views:

109

answers:

5

When several text fields on a form are logically grouped into a groupbox and are optional in the scope of the form, is it better to add a check box saying "Yes I want to fill these fields out" or is best to just leave them blank?

The checkbox does provide a useful flag saying 'Hey, group XYZ is valid."

A: 

I would not over-complicate it with a checkbox. Just validate that all mandatory data has been entered.

Galwegian
+1  A: 

In terms of usability I would always vote implicit.

However, I would rather do something (i.e. explicit) if the implicit implementation is stupid.

Go for implicit, but test the hell out of it and make sure it pulls the right stuff at the right time. (IMO)

Rob Cooper
A: 

I agree with others that the simple answer is to do it implicitly, I would take some time to consider the use cases and their frequency, as well as any required field interdependency.

For example, on a shipping/billing address form, the option to complete a different billing address is almost always explicit because it is the rare case.

If, on the other hand, it is common for the grouped optional fields to be used, making it implicit and leaving it to the user to fill them in or not is probably the better choice.

In addition to all of that, you should also consider the usage patterns that your users will have, and their workflow. Will your app be used by a small group of expert users who use it day in and day out, or by a larger group of more casual users, or something between those two extremes?

In my opinion, user interface design is rarely cut and dried. A lot of decisions are (or should be) situational.

Malachi
A: 

The label "Optional" for the group is probably sufficient and saves the user from having to figure out and use the checkbox.

Even better in most cases: label or mark the other fields as "Required." That's probably more important to do. Only bother labeling optional fields if you're observing lots of users wasting their time filling them out unnecessarily

Michael Zuschlag
+1  A: 

Depends :)

As an example: If -

  • you have >= 3 settings for a feature called "automatic publishing",
  • automatic publishing is used by less than 70% of your users
  • the settings share a form with other features that use used independently from it

I'd add a checkbox "Publish automatically" to the group, and show the dependent controls only if the checkbox is enabled.

Rationale: Users who do not need automatic publishing should not see questions about automatic publishing (like "what server", "what user" etc.)

If the optional fields are not related to each other (i.e. they belong to different features of the app), this gets more "depends"-sy. If they are more than 20% of all options on the form, i'd put them on a separate "Advanced" form, or - even better - provide a "form expander", e.g. a [More >>] button. (Consider saving the state of this button).

Otherwise, don't bother (but make it obvious which fields are required).

(all numbers are rules of thumb. Thumb diameter may vary.)

peterchen