2

In the middle of a very complex form used in a meeting booking system, I've been asked to create the following

Field 1: Text Input

Field 2: Yes/No radio

The project BA is requesting that first field be mandatory, only if the second field is set to 'No', otherwise it should be optional.

Filling the first field will be used to help populate the meeting title. The user then gets the option to also edit that at the end of the process.

I think this is a very poor idea, but they are insisting on that order and that the first field is only mandatory base on the answer to the second question.

Given that I guess I'm asking two questions, what would be the best way to deal with a mandatory field indicator and what are the best arguments against doing this?

4
  • Could you please enter in more details about the fields? What are they about? Jun 8, 2021 at 14:00
  • Does this answer your question? Conditional forms and disabling input fields? Jun 8, 2021 at 14:03
  • @maxathousand Not exactly a duplicate, because it concerns a next field that determines whether a previous field is mandatory.
    – jazZRo
    Jun 8, 2021 at 16:33
  • Without knowing the larger concept, the first thing that comes to mind is, rather than simply "yes" and "no", provide a brief description of each option. For example, Select one: [Edit Title] or [Skip to end of process]. Nov 3, 2022 at 3:30

2 Answers 2

1

When I've been tempted to do this, it certainly is because of a misconception of my data structure. Or, for example, because I actually really want the text input to be filled even if it's not mandatory.

The reason it's bad is that a form branches from the root. Or, if you like, it falls from the top of the waterfall. What is further down does not affect what is further up. You should never be able to invalidate what was a valid choice. Even in real life when we do this, we realize we forgot to ask a key question earlier.

If you really are forced to do this, your only option is basically to move the previous field "downriver" — bump it so it is experienced as coming up next. There are various ways to do that. Scroll the user's browser up to the text field. Dynamically move the text field below the radio buttons. Put a big red highlight on the text field. Print a warning below the radio button when "yes" is selected: "With this option, you must enter your dog's name above." Or some combination thereof.

0

"The user then gets the option to also edit that at the end of the process."

This is where you can make it required, if the radio button value is "no".

It's potentially a problem if the user wants to change the value to "yes" when they're working on the title.

Hopefully user testing helped you make a case for a better order.

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.