I have a very specific use case and it has led me to question the checkbox vs radio button convention...

Radio buttons are used when there is a list of two or more options that are mutually exclusive and the user must select exactly one choice. In other words, clicking a non-selected radio button will deselect whatever other button was previously selected in the list.

Checkboxes are used when there are lists of options and the user may select any number of choices, including zero, one, or several. In other words, each checkbox is independent of all other checkboxes in the list, so checking one box doesn't uncheck the others.

I have a scenario where the user has the option to attach a CV/Resume to a message from a list of CV/resumes that the user has previously uploaded.

The user doesn't have to select any, but only one CV/Resume can be sent with each message.

Therefore radio buttons aren't applicable here because the user can not de-select a radio button. Checkboxes aren't applicable either really as only multiple can be selected.

So what would be the control?

I've gone with checkboxes and extended the functionality to only select 1 at a time.

So I guess my question is, have I made the wrong decision extending checkboxes? And if so, what would be a better solution?

Thanks! Mitch

  • 1
    Add a third radio button with "no attachment"? Jul 9, 2014 at 9:31

4 Answers 4


I would use a radio list and include "don't attach a CV" as one of the options. Don't modify the behaviour of checkboxes - that would be misleading.


download bmml source – Wireframes created with Balsamiq Mockups

  • 1
    Thanks Matt, sometimes the easiest solutions don't surface... then they smack you in the face!
    – Mitch
    Jul 11, 2014 at 11:48

Matt's solution seems very clear to me. However it depends on the number of CV's you are going to show them. If the person has approximately more than 5-6 CV's; I would suggest to have a selection box - combo box.

I would also suggest to put the no-CV option at the checkout.

add CV more than a couple of CVs

I have another suggestion. selecting from a large list is something I deal with on my everyday design work. I would suggest to add additional info to the CVs (upload date, given description, etc...) while selecting and viewing.


Or you can use two radios, one with text, one with a dropdown:

  • Do attach + dropdown, where you'll select which of those uploaded
  • Don't attach CV

Or combine it all into one dropdown with options: - Don't attach CV - Attach CV 1 - Attach CV 2 - Attach CV 3 - Upload another CV...

Thinking about common default option might help you to decide for best UI.


There are plenty of UI customization you can implement in such situation, for instance you can provide a drop down list box with the list containing all the Resumes. The 0th element would be 'NA' or something like that so that its up to the user to select or not select the Resume.

Second you can use Radio button and can always provide a way to deselect the attached Resume after its gets attached to the message by using a simple cancel/cross button. So, even after the user selected the Resume , he/she can cancel it using that button.

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.