The HTML formnovalidate attribute
Quick answer
The HTML formnovalidate attribute skips form validation when submitting via this button. It is used on the <button> and <input type="submit"> elements.
Overview
The formnovalidate attribute skips form validation when submitting via this button. It applies to the <button> and <input type="submit"> elements.
Handy for a "Save draft" button that should submit incomplete data while the main "Submit" still validates.
Syntax
<button formnovalidate>Save draft</button>
Values
| Value |
|---|
| A boolean attribute — present or absent. |
Best practices
- Always set an explicit type on a <button> — the default inside a form is
submit. - Use the
form*override attributes only when one button genuinely needs different submission behavior. - Give every button clear, descriptive text for screen readers.
- Prefer real <button> elements over clickable <div>s for keyboard and accessibility support.
Frequently asked questions
What does the formnovalidate attribute do?
Skips validation for one submit button.
Why does my button submit the form unexpectedly?
Can one button submit to a different URL than the form?
Yes. Put
formaction (and optionally formmethod) on that submit button to override the form.