บทนำ
แอตทริบิวต์ novalidate ใช้ปิดการ Validate ฟอร์มเมื่อ Submit เป็น Boolean Attribute วางที่ <form>
เหตุผลในการใช้งาน
- บันทึกแบบร่าง (Save Draft) - ผู้ใช้บันทึกความคืบหน้าได้แม้กรอกไม่ครบ/ผิด
- ฟอร์มหลายขั้นตอน (Multi-step Wizard) - ไปขั้นตอนต่อไปได้โดยไม่ Validate ขั้นก่อน
- ทดสอบฝั่ง Server - ส่งข้อมูลทดสอบโดยไม่ต้องกรอกให้ครบทุกฟิลด์
- ฟอร์มค้นหา/กรอง - ไม่จำเป็นต้อง Validate
ตัวอย่างโค้ด
<!DOCTYPE html>
<html>
<head>
<title>HTML Novalidate Attribute</title>
</head>
<body>
<form action="" method="get" novalidate>
ชื่อนักเรียน<br>
<input type="text" name="sname" required><br>
คะแนนรวม<br>
<input type="number" name="mark" required><br>
<input type="submit" value="Submit">
</form>
</body>
</html>
พฤติกรรม
- แม้จะมี
required,pattern,min,maxก็จะ ไม่ ตรวจสอบ - ข้อมูลจะส่งไป Server ทันที
- Server-side Validation ยังคงจำเป็น (Security)
การรองรับเบราว์เซอร์
รองรับในเบราว์เซอร์สมัยใหม่ทั้งหมด รวมถึง IE10+