HTML: Checkbox default value

cross-browser, html

Solution

The HTML 4.01 specification does not specify the value of a checked checkbox. It just refers it saying that it is “on”, but this is just prose and does not say what the default value is. But it also says (under the description of the `input` element) that the `value` attribute is required in this case.

So `<input type=checkbox name=foo>` has undefined behavior as regards to the value used, though in practice browsers use `value=on` as the default.

Problem

When I submit a HTML form with a checked checkbox that doesn't have an explicitly defined `value`, Chrome sends `on` as a value for that field. Is that the standard behavior? Or what can I expect from other browsers?

Original source