The novalidate Attribute

The Current State of HTML5 Forms

<form novalidate>
  <input type=number name=num step=5>
</form>

Live Demo (with novalidate)

“4” would fail validation.


Live Demo (without novalidate)

“4” would fail validation.


 


Firefox
4+

Safari
7-

Safari
7-

Chrome
10+

Opera
10.0+

IE
10+

Android
4.2+

The Low Down

novalidate if a form-level attribute used to turn off validation for a form, despite the attributes of the inputs it contains (i.e. will override inputs with therequired attribute, or that would otherwise fail validation).

  • Forms naturally validate, no special attributes needed. This special attribute is needed to turn that off. Include it only on the <form> opening tag.
  • You might use this if you plan to do your own client-side validation, if you want to create your own validation bubbles, or if you plan to go all server-side validation (which you need to do anyway).
  • Do not use novalidate if you simply want to internationalize or otherwise change the content of the default error messages. This can be done with JavaScript.
  • This is a classic example of why server side validation is extra important: one little change in development tools can force an entire form to skip validation allowing bad data to go through.
  • While Safari, iOS and Android to support the validation object, the form is sumbmitted whether the form validates or not, as if the novalidateattribute was always present.

Our Cookie Policy and Privacy Policy outline how we use cookies to help personalize content, tailor and measure our marketing, and improve your user experience. I agree to use of cookies for these purposes.