I am working on a somewhat larger html5 form in a Gatsby site and was wondering if there is a better way to name checkboxes/radio buttons. According to the docs and what I read here each input has to have a unique name which works fine for text-fields and even dropdowns but for checkboxes and radio buttons this gets messy quite quickly.
Will then turn into “Anrede Herr: Herr” and “Anrede Frau” in the Netlify UI.
In a form with multiple checkbox groups with a couple values each it gets unusable. Is there any way to only see one name for the fieldset and the user selected value(s)?
Thank you! Works like a charm.
I got tripped up by some gatsby-netlify-forms-problems I had and thought the name not being unique was the reason. Maybe you could also add this to the example in the docs just in case somebody else has this question.
I’m using a fieldset and legend and it’s still not showing up properly in the Forms UI. Is there something simple like these extra divs tripping up the parser?
<fieldset>
<legend class="mb-2">
<div class="label is-active">What are you thinking about these days?</div>
</legend>
<div class="mb-2">
<label class="inputRadio-module--radio--1U9Wi" for="contact-form-option-1"
><input
class="screen-reader-only"
type="radio"
name="topic"
id="contact-form-option-1"
value="Taking my company into the future"
/><span>Taking my company into the future</span></label
>
</div>
<div class="mb-2">
<label class="inputRadio-module--radio--1U9Wi" for="contact-form-option-2"
><input
class="screen-reader-only"
type="radio"
name="topic"
id="contact-form-option-2"
value="Making my brand mean more"
/><span>Making my brand mean more</span></label
>
</div>
<div class="mb-2">
<label class="inputRadio-module--radio--1U9Wi" for="contact-form-option-3"
><input
class="screen-reader-only"
type="radio"
name="topic"
id="contact-form-option-3"
value="Crafting emotional experiences"
/><span>Crafting emotional experiences</span></label
>
</div>
<div class="mb-2">
<label class="inputRadio-module--radio--1U9Wi" for="contact-form-option-4"
><input
class="screen-reader-only"
type="radio"
name="topic"
id="contact-form-option-4"
value="Designing a new product"
/><span>Designing a new product</span></label
>
</div>
<div class="mb-2">
<label class="inputRadio-module--radio--1U9Wi" for="contact-form-option-5"
><input
class="screen-reader-only"
type="radio"
name="topic"
id="contact-form-option-5"
value="Something else"
/><span>Something else</span></label
>
</div>
</fieldset>
This may be a good recommendation for forms to work fine with the Netlify parser, but it propagates bad markup: some screen readers won’t be able to announce input fields like that. is the correct way to go, and if Netlify is not able to parse this correctly, I suggest it learns to do so
I guess it currently doesn’t parse correctly because at least in my case I encounter problems.
Has there been any update on this feature? Wrapping a checkbox/radio isn’t always possible or desired. Bootstrap for example doesn’t wrap them, and the accessibility factor is super important. Wrapping checkboxes/radios in a fieldset with a legend should be more than enough to use the legend as the text instead of the first label’s content.