[Forminator Pro] Three-state Checkbox

0

While creating a lot of forms in Forminator, I’m finding a desire, not quite a “need”, for a three-state checkbox. Does anyone else think this would be useful? I’m thinking aloud here as much as asking for enhancements…

This is a very typical scenario: If someone doesn’t check a box, does that mean the answer is No, or that they didn’t answer the question? This is why we have an explicit Null in programming and databases, versus a default of zero, so that we know if the value is actually zero or if there is no data.

With the current tooling we might create checkboxes, and then need to create radio buttons for some options and delete the checkboxes. While this indicates a lack of planning, I think it might be a typical experience.

For a Checkbox, Settings includes a Require option. This can be used for a “I Accept, Approve, Confirm”, or verification of multiple conditions multiple Verification. Outside of that application I don’t think this works for a yes/no verification – am I missing something?

If seems that for a single Checkbox “field”, where there are multiple checkboxes, it would help to have each option be a required pair of radio buttons. So rather than a simple checked/unchecked value, we can force choice of Yes or No, then the Require option has meaning for multi-option check fields.

There are many options here… Yes/No radio, separate checkboxes, a Select dropdown that requires a value. What about a new Field type, like the Name or Address combined types, where each option must be have a user-selected value. Ideally that field would support a choice of control types, allowing us to switch all options within the field to Select, Radio, or Checkbox.

I don’t even know if this is a good idea. We can just create multiple fields to serve our needs, like any other application. I’m just looking for ways to make this UX pattern a little easier to manage.

Opinions welcome. Thanks.

  • Adam
    • Support Gorilla

    Hi Tony G

    I hope you’re well today and that it’s fine if I’ll respond “out of order” :)

    1. Combined name/address field

    There’s currently no “combined” field like that indeed and you’d need to use two fields instead: name and address. But the key feature, if I understand correctly, is about being able to “require” parts of the field/data separately and that’s doable:

    A) a “name” field can be set to “multiple” option (by default it’s “single”) and you can then enable/disable parts of it (prefix, first name, middle name, last name), then for each of these sub-fields, you can separately set

    – label and description
    – default value and/or placeholder (depends on the field)
    – if it’s required or no
    – and even to pre-populate it (from URL query var) separately

    b) in “address” field this works the same way out of the box – each of the sub-fields can be set to required or not separately and have basic parameters (including pre-populate) set individually

    So the only downside here, in my opinion, is that you still need to use two fields instead of one “combined” – but that shouldn’t be a big deal, I think.

    2. Checkbox field

    Note that with checkbox field you can always have one of the options set as “selected” by default. When you create a field and add options you can choose which one should be set by default. You can also add multiple options (checkboxes) instead of just two and set entire field to requires.

    The “required” setting cannot be set “per option” but to be honest I’m not sure why and how to set it “per option”. I mean, it’s a checkbox – it’s either checked or not. If you have a checkbox field with two options (e.g. yes/no) then user sees two checkboxes and each of them can either be checked or not. A “required” option means that user must check any of those boxes but if we’d make required just a single box – then it would mean that they must check that specific box no matter what.

    That’s as good as not adding checkbox at all and just adding a message instead like “By submitting this form you say “yes” to this question”…

    Isn’t it?

    You also mentioned “checkbox-radio” pair. You can do something like that already, I believe, using visibility conditions:

    – add a radio field with two options (e.g. yes/no)
    – then add a checkbox field
    – then set visibility condition for that checkbox field to show it only if radio is set to e.g. “yes”

    3.

    There are many options here… Yes/No radio, separate checkboxes, a Select dropdown that requires a value.

    I admit I’m bit lost here.. .what do you mean? Would you elaborate on this a bit, please?

    Best regards,
    Adam