Forms: Select & Radio — HTML

Gak semua input itu nyentuh keyboard — banyak data yang user pilih dari opsi yang udah disiapin. Mau pilih kota? Dropdown panjang lebih efisien dari ngetik…

Kadang pengunjung gak perlu mengetik, cukup memilih dari pilihan yang sudah kamu siapkan. HTML punya tiga alat buat itu: <select> (dropdown, pilih satu dari daftar yang dilipat), radio (bulatan, pilih satu dari beberapa yang kelihatan semua), dan checkbox (kotak centang, boleh pilih lebih dari satu).

🧪 Tebakan cepat: ada dua radio dengan name yang berbeda. Bisa gak keduanya dipilih bersamaan? Tebak dulu, jawabannya ada di bagian "Radio: pilih satu dari beberapa".

Dropdown dengan <select>

<form>
  <label for="kota">Kota pengiriman</label>
  <select id="kota" name="kota">
    <option value="">Pilih kota</option>
    <option value="jakarta">Jakarta</option>
    <option value="bandung">Bandung</option>
    <option value="surabaya">Surabaya</option>
    <option value="yogyakarta">Yogyakarta</option>
  </select>
</form>

Hasilnya, kotak bertuliskan "Pilih kota" dengan panah kecil. Pengunjung pilih Bandung, form mengirim kota=bandung: name dan value, bukan teks yang kelihatan. (<option> tanpa value mengirim teksnya.) Dropdown cuma bisa dipilih satu, kecuali diberi atribut multiple: <select multiple>.

Radio: pilih satu dari beberapa

<p>Pengiriman</p>
<label><input type="radio" name="kirim" value="reguler"> Reguler</label>
<label><input type="radio" name="kirim" value="kilat"> Kilat</label>
<label><input type="radio" name="kirim" value="ambil"> Ambil di toko</label>

Jawaban tebakan: bisa. Kalau name-nya beda, tiap radio jadi grup sendiri, jadi semuanya bisa dipilih sekaligus.

Checkbox: boleh pilih banyak

<p>Hobi kamu</p>
<label><input type="checkbox" name="hobi" value="coding"> Coding</label>
<label><input type="checkbox" name="hobi" value="olahraga"> Olahraga</label>

Jadi radio cuma bisa satu, checkbox boleh banyak. Dua-duanya butuh name yang sama buat satu grup dan value yang beda buat tiap pilihan, ditulis di dalam tanda kutip: name="hobi", bukan name=hobi.

⚠️ Jebakan yang sering ketemu

TL;DR: <select> berisi <option> buat dropdown, tambah multiple kalau boleh pilih banyak. Radio (type="radio") cuma bisa pilih satu, asal semua radio dalam grup punya name yang sama. Checkbox (type="checkbox") boleh pilih banyak. Yang dikirim adalah pasangan name dan value, bukan teks yang kelihatan, jadi tiap pilihan butuh value-nya sendiri.

Yang akan kamu pelajari