JavaScript form validation
Constraint Validation API rather than a regex soup: the browser already knows whether an email is an email, so this reads validity.valueMissing and validity.typeMismatch and renders the message under the field. Validation is a courtesy to the person filling in the form. The endpoint validates again server-side regardless.
HTML · CSS · JavaScript
Replace YOUR_ACCESS_KEY with the access key from your dashboard. Create one free. The endpoint and the honeypot are already in place.
Useful for
- Contact formsThe classic name / email / message, delivered to your inbox.
- Customer supportA support form that reaches your team fast.
The part behind every one of these is a form backend. This template posts to a PortForm form endpoint; the docs cover the fields and responses.
Other templates
- Basic HTML contact formHTML · CSS
- Ajax contact formHTML · CSS · JavaScript
- Multi-column contact formHTML · CSS
- Masked phone inputHTML · CSS · JavaScript
- Contact form with dark modeHTML · CSS
- Raw contact form (no CSS)HTML
- Multi-step NPS surveyHTML · CSS · JavaScript
- Multi-step survey formVue · HTML · CSS
- Contact form popupTailwindCSS · Alpine.js · HTML
- Popover feedback widgetTailwindCSS · Alpine.js · HTML
- File upload formHTML · CSS
- JavaScript file upload formHTML · CSS · JavaScript
- React contact formReact · HTML · CSS