- Checkboxes (and radio buttons) are on/off switches that may be toggled by the user. A switch is "on" when the control element's checked attribute is set. When a form is submitted, only "on" checkbox controls can become successful.
Several checkboxes in a form may share the same control name. Thus, for example, checkboxes allow users to select several values for the same property. The INPUTelement is used to create a checkbox control.
Look I don't disagree in principle, but the fact is that all we can do in a project like this is really code baseline to standard and then possibly allow a non standard option. I actually started writing a post about that possibility when I was working on the multiple save/multiple checked problems in checkboxes. In survey research (which I do) it is very important to be able to distinguish "did not answer" from "did not select any of the choices offered." That's a slightly different issue because you only save once, but it's basically impossible to do that in a standards compliant way without offering the "none" option.
name=flavor value=strawberry name=flavor value=chocolate
So, assuming one checkbox is checked, then you will have
flavor=vanilla
Wheras if 2 checkboxes are selected you will have
flavor=vanilla&flavor=strawberry
An array of values which can then be handled server side.
Wheras if NO checkboxes are selected, then you have...well, nothing.
The standard does not dictate how the SERVER is required to handle the input, so the server can certainly use the lack of any value posted to update the data can't it?