Kodokon kodokon.com

ฟอร์ม: input, label, select, textarea, button

สร้างฟอร์มที่สมบูรณ์ เข้าถึงได้ และพร้อมใช้งานจริง

10 นาที · 3 คำถาม

เปิดบทเรียนนี้ใน Kodokon

ฟอร์มคือประตูสู่แทบทุกการโต้ตอบบนเว็บ ไม่ว่าจะเป็นการสมัครสมาชิก การค้นหา การชำระเงิน หรือการติดต่อ คุณรู้อยู่แล้วว่าหน้าเว็บมีโครงสร้างอย่างไร ตอนนี้ถึงเวลาลงมือปฏิบัติจริง เริ่มจากท่องกฎทองไว้ให้ขึ้นใจ: ทุกฟิลด์ต้องมีแอตทริบิวต์ name เพราะ สิ่งนั้น ต่างหากที่ถูกส่งไปยังเซิร์ฟเวอร์ ไม่ใช่ id

HTML
<form action="/subscribe" method="post">
  <label for="email">Email address</label>
  <input type="email" id="email" name="email" required>
  <button type="submit">Sign up</button>
</form>
ฟอร์มสมัครสมาชิกที่กระชับแต่ครบถ้วน

ลองดูคู่ label / input นี้: แอตทริบิวต์ for ของ label ชี้ไปยัง id ของฟิลด์ ความเชื่อมโยงนี้จำเป็นอย่างยิ่งสำหรับโปรแกรมอ่านหน้าจอ สังเกต type="email" ด้วย: เบราว์เซอร์จะตรวจสอบรูปแบบให้ฟรีและแสดงแป้นพิมพ์ที่เหมาะสมบนมือถือ ยังมีชนิดอื่นที่ใช้ได้ทุกวัน: number, date, password, checkbox, radio

HTML
<label for="country">Country</label>
<select id="country" name="country" required>
  <option value="">-- Choose a country --</option>
  <option value="fr">France</option>
  <option value="ca">Canada</option>
</select>

<label for="message">Your message</label>
<textarea id="message" name="message" rows="5"></textarea>
select สำหรับตัวเลือกที่จำกัด textarea สำหรับข้อความอิสระ

ตัวสุดท้าย: button มันรับได้สามชนิด: submit (ส่งฟอร์ม), reset (ล้างค่าในฟิลด์) และ button (ไม่ทำอะไรด้วยตัวเอง ต้องเชื่อมกับ JavaScript) แบบฝึกคิด: ในฟอร์มเขียนบทความบล็อก คุณเพิ่มปุ่ม "Preview" ที่ต้องไม่ส่งข้อมูล คุณจะให้ชนิดใดกับมัน? คำตอบ: type="button"

HTML
<form action="/contact" method="post">
  <label for="topic">Subject</label>
  <select id="topic" name="topic">
    <option value="support">Technical support</option>
    <option value="billing">Billing</option>
  </select>

  <button type="submit">Send</button>
  <button type="button" id="preview-btn">
    Preview
  </button>
</form>
สองปุ่ม สองพฤติกรรมที่แตกต่างกัน

ทดสอบความรู้

ตรวจสอบว่าคุณจำประเด็นสำคัญของบทเรียนนี้ได้ครบถ้วน

  1. แอตทริบิวต์ใดที่เชื่อม label เข้ากับฟิลด์ของฟอร์ม?
    • แอตทริบิวต์ for ของ label ซึ่งชี้ไปยัง id ของฟิลด์
    • แอตทริบิวต์ name ที่เหมือนกันทั้งบน label และฟิลด์
    • แอตทริบิวต์ value ของ label
    • แอตทริบิวต์ placeholder ของฟิลด์
  2. ภายในฟอร์ม ชนิดเริ่มต้นของปุ่มที่ไม่มีแอตทริบิวต์ type คืออะไร?
    • submit
    • button
    • reset
  3. คุณใช้เอลิเมนต์ใดสำหรับกรอกข้อความยาวหลายบรรทัด?
    • input ที่มี type="text"
    • textarea
    • select
    • output