Best way to do YES/NO and N/A option in a form.

The YES/NO field type is great, but I would like to create the N/A option. I know it's possible to create three buttons using the ENUM type, but is it possible to create a third option using YES/NO?

Since YES/NO stores the data as TRUE/FALSE, it is great for logic. Sometimes I just need the user to select N/A, but with ENUM it will not internally save the data as boolean, but as text (at least not without having to create new columns for the logic).

Any tips?

Solved Solved
0 3 1,405
1 ACCEPTED SOLUTION

If you require that the user explicitly indicates that a question is "n/a", then its no longer just a Yes/No type column and cannot be done with a single Yes/No column.

However, if you can allow users the option to NOT answer a question, then you could assume that anything left blank is "n/a".  OR you could default all questions to either No or Yes and instruct the user to change the answers if needed and deselect an answer for explicit indication of "n/a". 

View solution in original post

3 REPLIES 3

If you require that the user explicitly indicates that a question is "n/a", then its no longer just a Yes/No type column and cannot be done with a single Yes/No column.

However, if you can allow users the option to NOT answer a question, then you could assume that anything left blank is "n/a".  OR you could default all questions to either No or Yes and instruct the user to change the answers if needed and deselect an answer for explicit indication of "n/a". 

Thanks, that's what I suspected, but I'd like some opinions.

My solution has been to provide both spaces in the form:

  • Yes/No
  • Enum (for other options)

This has the added benefit of allowing for other answers as well.

A client of mine is a researcher, and we were working on a survey taking app; he needed this exact ability, and the following is how we solved it.

  • We provided a Yes/No column for the True/False aspect of things
  • We also provided an "Other" space; this was an Enum, which gave us the following options:
    • We could always include a "Refuse" option
    • We could dynamically add other options into the mix, based on the question being asked
    • We could pull answers from previous questions, and use them as options in this "other" space

In short, a ton of functionalities were opened up because we included this secondary column; many we were never intending on including, but now serve as part of the backbone functionality of the system.

Top Labels in this Space