Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> HTML

ทำไมต้องใช้แอตทริบิวต์ Novalidate ใน HTML


บทนำ

แอตทริบิวต์ 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+