HTML / Input төрлүүд

Input төрлүүд

<input> tag нь type attribute-ийн утгаас хамаарч огт өөр харагдалтай, өөр үйлдэлтэй болдог. Зөв type сонгох нь хэрэглэгчийн туршлагад шууд нөлөөлнө.

Текст оруулах төрлүүд

html
<!-- Энгийн текст -->
<input type="text" name="username" />

<!-- И-мэйл — формат шалгадаг, гар утсанд @ гардаг гар нээнэ -->
<input type="email" name="email" />

<!-- Нууц үг — текстийг нуудаг -->
<input type="password" name="password" />

<!-- Тоо — дээш/доош сум гардаг -->
<input type="number" name="age" min="1" max="120" />

<!-- URL — формат шалгадаг -->
<input type="url" name="website" />

<!-- Утасны дугаар — гар утсанд тоон гар нээнэ -->
<input type="tel" name="phone" />

Гар утсанд type="email" дарахад @ бүхий тусгай гар нээгдэнэ. type="number" дарахад тоон гар нээгдэнэ. Зөв type сонгох нь гар утасны хэрэглэгчийн туршлагыг ихээхэн сайжруулдаг.

Огноо ба цаг

html
<!-- Огноо — хөтөч calendar харуулна -->
<input type="date" name="birthday" />

<!-- Цаг -->
<input type="time" name="meeting-time" />

<!-- Огноо + цаг -->
<input type="datetime-local" name="event-start" />

<!-- Сар -->
<input type="month" name="expiry" />

Харагдах байдал хөтөч болон үйлдлийн системээс хамаарч ялгаатай боловч бүгд ажилладаг.

Сонголтын төрлүүд

checkbox — олон сонголт

html
<!-- Нэг checkbox -->
<label>
  <input type="checkbox" name="agree" value="yes" />
  Нөхцөл зөвшөөрч байна
</label>

<!-- Олон checkbox — нэг бүлэгт ижил name -->
<p>Хэл сонгох:</p>
<label>
  <input type="checkbox" name="lang" value="html" />
  HTML
</label>
<label>
  <input type="checkbox" name="lang" value="css" />
  CSS
</label>
<label>
  <input type="checkbox" name="lang" value="js" />
  JavaScript
</label>

checked attribute нэмбэл анхнаасаа сонгосон байна:

html
<input type="checkbox" name="newsletter" value="yes" checked />

radio — нэг сонголт

html
<!-- Ижил name → нэг бүлэг, зөвхөн нэгийг сонгоно -->
<p>Хүйс:</p>
<label>
  <input type="radio" name="gender" value="male" />
  Эрэгтэй
</label>
<label>
  <input type="radio" name="gender" value="female" />
  Эмэгтэй
</label>
<label>
  <input type="radio" name="gender" value="other" />
  Бусад
</label>

Radio button бүлэг дотроос зөвхөн нэгийг сонгох боломжтой — name attribute ижил байх ёстой.

Файл ба медиа

html
<!-- Файл оруулах -->
<input type="file" name="avatar" />

<!-- Зөвхөн зураг -->
<input type="file" name="photo" accept="image/*" />

<!-- Олон файл -->
<input type="file" name="docs" multiple />

<!-- Өнгө сонгогч -->
<input type="color" name="theme-color" value="#f87171" />

Гүйлгэгч

html
<!-- Range гүйлгэгч -->
<label for="volume">Дуу чимэг: <span id="vol-display">50</span></label>
<input
  type="range"
  id="volume"
  name="volume"
  min="0"
  max="100"
  value="50"
/>

Нуугдмал input

html
<!-- Хэрэглэгчид харагдахгүй, серверт явуулах нэмэлт өгөгдөл -->
<input type="hidden" name="course-id" value="html-01" />

placeholder ба value

html
<!-- placeholder — хоосон үед харагдах зөвлөмж текст -->
<!-- Бичиж эхлэхэд алга болно -->
<input type="text" placeholder="Жишээ: Бат" />

<!-- value — анхны утга, засварлаж болно -->
<input type="text" value="Бат" />

<!-- Хоёуланг хамт хэрэглэж болно -->
<input type="number" placeholder="0" value="10" />

placeholder нь label-ийг орлохгүй — дагалдах зөвлөмж болгон л хэрэглэнэ.

Практик жишээ

html
<form action="/profile" method="POST">

  <label for="name">Бүтэн нэр</label>
  <input type="text" id="name" name="name" placeholder="Овог Нэр" />

  <label for="email">И-мэйл</label>
  <input type="email" id="email" name="email" placeholder="example@mail.com" />

  <label for="age">Нас</label>
  <input type="number" id="age" name="age" min="1" max="120" />

  <label for="bday">Төрсөн огноо</label>
  <input type="date" id="bday" name="birthday" />

  <p>Сонирхол:</p>
  <label>
    <input type="checkbox" name="interest" value="coding" />
    Програмчлал
  </label>
  <label>
    <input type="checkbox" name="interest" value="design" />
    Дизайн
  </label>

  <label for="avatar">Профайл зураг</label>
  <input type="file" id="avatar" name="avatar" accept="image/*" />

  <button type="submit">Хадгалах</button>
</form>

Дараагийн хичээлд:

<select>, <textarea>, <button> болон <fieldset>, <legend> элементүүдийг үзнэ. Унждаг жагсаалт, олон мөрт текст оруулах талбар хэрхэн хийх талаар сурна.