This is the part of our advanced search screen for searching the documents:

enter image description here

It works like this:

  • if the "Search in documents containing any language" is selected and users clicks on a check-box then the "Search in documents containing these languages" is automatically checked.
  • if any of the check-boxes are checked and the user clicks "Search in documents containing any language" then all the check-boxes are automatically unchecked.

There is another case: if the "Search in documents containing these languages" is checked and all of the check-boxes are unchecked the search returns documents contaning any language. This can be a little confusing (what happens if none of the checkboxes are checked), so I am asking you what is your opinion. Is it confusing?

After thinking I am not sure if the radio buttons are necessery. This is redisigned screen (google alike):

enter image description here

What do you think? Is this more clean and clear? But also this screen doesn't solve the dilemma what happens when none of the checkboxes are checked. Should I add a note after the checkboxes "Note: if no languages are checked the search results will return documents containing any language" or something like this...

Should we use tri-state checkboxes (gray for initial state and when all of the checkboxes are unchecked)? I am not sure if adding additional state will help...

  • I agree that the redesign is better. What is the likelihood that a user will use the advanced language search options?
    – Emil
    Commented Sep 1, 2011 at 18:58

3 Answers 3


I think that second idea is more clean and probably easier to grasp, given all possible the behaviors you listed.

One thought for improvement though: what if instead of having a "Select all" checkbox outside the language selection area, you use "any language" (AL) as a checkbox right at the start or end of the list (maybe set apart visually to show it's different)?

  • AL would be grayed out and automatically checked if all or no other checkboxes are checked.
  • AL would be clickable and unchecked in all other cases.
  • Checking AL would check all other boxes (and gray out AL)
  • I think this is a good idea. My preference for the behaviour, though, would be to have the "any" box uncheck all others if some are checked, and, if the "any" box is checked when any one of the others is clicked it unchecks "any". This way you don't have the situation where you have all of the boxes checked; something that seems unnecessary when you already have an "any" option. Also, no need for greying out controls.
    – phinetune
    Commented May 13, 2011 at 11:56

Is this scenario over complex and exposing to much of the technology that powers the search functionality?

For example if I were searching for words or phrases in documents of a particular language surely the word or phrase I enter will be in that language therefore unless the search term (spelling) is the same across multiple languages I'd only have returned documents in the language the term was entered as?

I suppose if the service you are designing for aims to translate the search term and then return all results the complexity above maybe a requirement.


I usually use something like the second idea, but instead of a checkbox for select all, i have some simple hrefs, in a lighter color than the usual, and they do "select all/select none/toggle". It usually depends on what makes more sense for that context(example, if by default all checkboxes are selected, then a "select none" or "toggle" is more useful than "select all")

If none of them are selected, simply post a message saying either "you need to select at least an item" or if i dont want to do extra validations, and the search is really fast&optimised, "0 results found" might be easier to implement. They both transmit the same message in my opinion, but the first one is more stupid-friendly...

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.