Cara Membuat Form HTML dan Contoh Lengkapnya

450

Cara Membuat Form HTML dan Contoh Lengkapnya - 2026

Saat kita berbicara soal website interaktif, ada satu komponen yang nyaris tidak pernah absen, yaitu Form HTML. Tanpa formulir, sebuah website akan terasa pasif—tidak bisa menangkap masukan dari pengguna atau menjawab kebutuhan mereka secara langsung.

Mulai dari login akun, pendaftaran newsletter, pengisian data diri, hingga proses checkout saat belanja online, form berperan sebagai penghubung utama antara pengguna dan sistem di balik layar.

Bagi pemilik website, form adalah pintu masuk untuk mendapatkan leads, konversi, hingga data yang bernilai.

Tapi apa sebenarnya form HTML itu? Apa saja jenis-jenisnya, elemen dasarnya, dan bagaimana cara membuatnya dengan benar agar fungsional sekaligus user-friendly?

Yuk, kita kulik bersama dasar-dasar form HTML karena memahami komponen kecil ini bisa berdampak besar pada efektivitas sebuah website!

Apa Itu HTML Form?

Secara sederhana, HTML form adalah elemen dalam HTML yang memungkinkan pengguna mengirimkan data ke server.

Form bisa dianggap juga sebagai wadah tempat pengguna memberikan informasi yang dibutuhkan, seperti nama, email, password, atau komentar. 

Form biasanya digunakan dalam interaksi dua arah antara user dan website. Contohnya:

  • Formulir pendaftaran akun
  • Formulir pencarian
  • Form login/logout
  • Form pemesanan produk

Di balik tampilannya yang sederhana, form menyimpan peran penting dalam dunia web development. 

Elemen-Elemen dalam HTML Form

Struktur dan Komponen HTML

HTML form terdiri dari beberapa elemen dasar yang masing-masing punya fungsi spesifik untuk menangkap input dari pengguna.

Penggunaan elemen yang tepat tidak hanya membuat form lebih fungsional, tapi juga meningkatkan pengalaman pengguna (user experience). Berikut adalah beberapa elemen yang sering dipakai:

1. <form>

 Elemen utama sebagai pembungkus seluruh input. Tag ini menentukan ke mana data akan dikirim dan bagaimana metode pengirimannya.

<form action="/submit" method="POST">
  <!-- input di sini -->
</form>

action: menunjukkan URL tujuan pengiriman data.

method: bisa POST (untuk data sensitif) atau GET (untuk permintaan data sederhana).

2. <input> 

Elemen serbaguna untuk berbagai jenis data seperti teks, email, password, dll.

<input type="text" name="nama" />

type: menentukan jenis input (misal: text, email, password, checkbox, dll).

name: digunakan sebagai kunci saat data dikirim ke server.

3. <label> 

Memberi label atau penjelasan untuk input tertentu, membantu pengguna tahu apa yang harus diisi.

<label for="email">Email</label>
<input type="email" id="email" name="email" />

“for” harus sama dengan “id” di elemen input untuk meningkatkan accessibility.

4. <textarea>

Digunakan untuk input teks panjang seperti komentar atau deskripsi produk, atau feedback pengguna.

<textarea name="komentar" rows="4" cols="50"></textarea>

Tips: Atur rows dan cols agar pengguna punya cukup ruang mengetik, atau gunakan CSS untuk kendali tampilan.

5. <select> & <option> 

Dipakai untuk membuat dropdown menu dengan beberapa pilihan yang bisa dipilih pengguna.

<select name="kota">
  <option value="jakarta">Jakarta</option>
  <option value="bandung">Bandung</option>
</select>

Ideal untuk pilihan terbatas seperti kota, negara, kategori, dll.

Tambahkan opsi default seperti –Pilih Kota– agar pengguna tidak langsung memilih tanpa sadar.

6. <button> 

Digunakan untuk mengirim form (type=”submit”) atau menjalankan aksi JavaScript (type=”button”).

<button type="submit">Kirim</button>

Beri teks yang jelas pada tombol, seperti “Daftar Sekarang”, “Kirim Form”, atau “Lanjutkan Pembayaran” agar intuitif.

Atribut Penting pada Form HTML

Agar form dapat bekerja dengan benar, efisien, aman, dan mudah dipahami oleh pengguna maupun developer, penting untuk memahami atribut-atribut kunci yang biasa digunakan.

Atribut-atribut ini menentukan bagaimana data diproses, ditampilkan, dan dikirim ke server.

1. Action

URL tujuan tempat data dikirim setelah form disubmit.

<form action="/proses" method="POST">

2. Method

Metode pengiriman data (GET atau POST). 

GET: Data dikirim melalui URL, cocok untuk pencarian.
POST: Data dikirim lewat body request, lebih aman untuk data sensitif.

<form method="POST">

3. Name

Memberikan nama unik untuk input, yang digunakan sebagai key saat data dikirim ke server.

<input type="text" name="nama">

Tanpa name, data input tidak akan dikirim ke server.

4. Id

Identitas unik pada elemen form, biasanya digunakan untuk mengaitkan dengan label atau JavaScript.

<label for="email">Email</label>
<input type="email" id="email" name="email">

5. Placeholder

Menampilkan teks bantu di dalam input field untuk memberi petunjuk singkat.

<input type="text" placeholder="Masukkan nama lengkap">

6. Required

Menandai input wajib diisi sebelum form bisa disubmit.

<input type="email" required>

Browser akan otomatis menampilkan pesan jika field ini dikosongkan.

7. Value

Menetapkan default atau nilai awal dari input.

<input type="text" value="John Doe">

Berguna untuk pengisian otomatis, form edit data, atau menampilkan data sebelumnya.

8. Type

Menentukan jenis input (text, password, email, dll).

<input type="password">

Setiap type membawa perilaku khusus dan validasi otomatis dari browser.

Contoh penggunaannya:

<form action="/proses" method="POST">
  <label for="nama">Nama:</label>
  <input type="text" id="nama" name="nama" placeholder="Masukkan nama lengkap" required>
  <label for="email">Email:</label>
  <input type="email" id="email" name="email" placeholder="[email protected]" required>
  <button type="submit">Kirim</button>
</form>

Form di atas menggabungkan berbagai atribut penting untuk membuat form yang fungsional, user-friendly, dan aman.

Apa Itu Field dalam HTML Form?

alam konteks form HTML, field adalah elemen tempat pengguna mengisi atau memilih informasi. Field bisa berupa kotak teks, pilihan dropdown, tombol radio, checkbox, hingga area untuk mengunggah file.

Semua elemen seperti <input>, <select>, dan <textarea> termasuk ke dalam kategori form field. Dengan kata lain, field adalah jembatan utama antara pengguna dan sistem, tempat data dikumpulkan sebelum dikirim ke server untuk diproses.

Jenis-jenis field yang umum:

1. Text field

Untuk input teks sederhana seperti nama, alamat, atau judul.

<input type="text" name="nama" placeholder="Nama lengkap">

2. Email field

Digunakan untuk input alamat email. Browser dapat otomatis memvalidasi format email.

<input type="email" name="email" placeholder="[email protected]" required>

3. Password field

Menampung input kata sandi, teks akan disembunyikan saat diketik.

<input type="password" name="password" required>

4. Checkbox

Memungkinkan pengguna memilih satu atau beberapa opsi. Biasanya digunakan untuk persetujuan syarat, preferensi, atau kategori.

<label><input type="checkbox" name="langganan"> Langganan newsletter</label>

5. Radio button

Digunakan untuk memilih satu dari beberapa opsi. Jika satu radio dipilih, yang lain akan otomatis nonaktif.

<label><input type="radio" name="gender" value="laki-laki"> Laki-laki</label>
<label><input type="radio" name="gender" value="perempuan"> Perempuan</label>

6. File upload

Memungkinkan pengguna mengunggah file, seperti foto profil, CV, atau dokumen.

<input type="file" name="cv">

Jangan lupa gunakan enctype=”multipart/form-data” di tag <form> saat menggunakan field file upload!

Data dari field ini nantinya akan dikirim ke server dan bisa diproses untuk berbagai kebutuhan, seperti autentikasi atau penyimpanan database.

Cara Membuat Form HTML Sederhana

Mau coba membuat form Anda sendiri? Cobalah contoh form HTML dasar di bawah ini:

<form action="/submit" method="POST">
  <label for="nama">Nama:</label>
  <input type="text" id="nama" name="nama" required />
  <label for="email">Email:</label>
  <input type="email" id="email" name="email" required />
  <button type="submit">Kirim</button>
</form>

Form di atas akan mengirim data nama dan email ke URL /submit menggunakan metode POST.

Cara Validasi HTML Form

Validasi adalah proses pengecekan data sebelum dikirim ke server. Tujuannya adalah untuk memastikan tidak ada data kosong atau format yang salah yang masuk ke database kita. 

Validasi dibagi menjadi dua jenis, yaitu:

Validasi HTML (Client-side)

Jenis validasi ini dilakukan langsung oleh browser menggunakan atribut bawaan seperti:

  • required
  • minlength, maxlength
  • pattern
  • type (misalnya email, number)

Validasi JavaScript (Client-side lanjutan)

Ini adalah validasi dari client-side yang lebih fleksibel dan memungkinkan Anda memberikan feedback secara real-time. Contohnya:

<script>
  function validateForm() {
    const email = document.forms["myForm"]["email"].value;
    if (email == "") {
      alert("Email harus diisi");
      return false;
    }
  }
</script>

Validasi Server-side

Validasi jenis ini dapat dijalankan setelah data dikirim. Ini merupakan lapisan keamanan terakhir untuk menghindari manipulasi data dari sisi client.

Penutup 

Form HTML bukan sekadar alat input, tapi pondasi penting yang mendukung interaksi pengguna di web. Mulai dari elemen dasar seperti <input> hingga validasi yang memastikan keamanan data, semua memiliki peran pentingnya masing-masing.

Dengan memahami cara kerja dan penerapannya, Anda bisa mulai membuat form yang tidak hanya fungsional, tapi juga ramah pengguna. 

Untuk memastikan kenyaman pengguna saat berinteraksi dengan form, Anda dapat mengikuti beberapa tips ini:

  • Gunakan label yang jelas
  • Tambahkan placeholder sebagai petunjuk
  • Tidak menggunakan terlalu banyak field
  • Gunakan validasi untuk memastikan data ter-organized
  • Tambahkan feedback visual (contoh: border merah saat input error)

Menguasai form HTML adalah langkah awal untuk membangun website yang responsif dan interaktif. Dengan memahami elemen dasar, atribut, hingga cara validasinya, Anda bisa menciptakan pengalaman pengguna yang lebih baik dan aman.

Jangan takut bereksperimen, dan terus tingkatkan kemampuan Anda melalui praktik langsung.

Ingin mulai membangun website sendiri dan uji langsung form HTML buatanmu?

Gunakan layanan Hosting Murah Exabytes yang sudah mendukung PHP, MySQL, dan control panel lengkap. Cocok untuk latihan hingga produksi. Atau pilih WordPress Hosting jika ingin membuat form dengan plugin drag-and-drop tanpa coding!