HTML Academy · Pelajaran

Elemen form: action, method dan enctype

Sediakan elemen form dengan action, method dan enctype.

Pelajaran 1 daripada 413 langkah

Elemen form: action, method dan enctype ialah pelajaran HTML Academy percuma di CoddyKit. Ini ialah pelajaran 1 daripada 4. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran HTML Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus HTML Academy merangkumi sejumlah 4 pelajaran.

Apakah Borang?

Borang HTML ialah cara utama pengguna menghantar data kepada pelayan:

  • Log masuk dan pendaftaran
  • Pertanyaan carian
  • Pembayaran dan urusan bayaran
  • Hubungan dan maklum balas

Setiap borang bermula dengan elemen <form>.

Elemen Borang

Elemen <form> membungkus semua kawalan borang:

<form action="/submit" method="post">
  <!-- form controls go here -->
  <button type="submit">Send</button>
</form>
<!-- When the user submits, the browser sends the form data
     to the URL specified in action using the method specified -->

Atribut action

Atribut action menentukan tempat data borang dihantar:

<form action="/api/login">...</form>      <!-- relative path -->
<form action="https://api.example.com/form">...</form>  <!-- absolute -->
<form action="">...</form>                 <!-- current URL (empty) -->
<form>...</form>                           <!-- no action = current URL -->

Atribut method

Atribut method mengawal cara data dihantar:

<form method="get">...</form>
<!-- GET: appends data to URL as query string
     example.com/search?q=html&sort=date
     Used for: search forms, filters, bookmarkable results -->

<form method="post">...</form>
<!-- POST: sends data in the request body
     Data is not visible in the URL
     Used for: login, registration, file uploads, sensitive data -->

GET berbanding POST

GET dan POST mempunyai ciri yang berbeza:

  • GET — data dalam URL (panjang terhad), boleh ditanda buku, dicache dan tidak mengubah hasil apabila diulang
  • POST — data dalam isi kandungan (tanpa had), tidak boleh ditanda buku, tidak dicache dan boleh mengubah hasil apabila diulang

Peraturan umum: jika penghantaran tidak mengubah keadaan pelayan → GET; jika mengubahnya → POST.

Atribut enctype

Atribut enctype mengawal cara data borang dikodkan untuk permintaan POST:

<!-- Default: URL-encoded (text/form fields) -->
<form method="post" enctype="application/x-www-form-urlencoded">

<!-- For file uploads: multipart -->
<form method="post" enctype="multipart/form-data">
  <input type="file" name="avatar">
</form>

<!-- Plain text (rare): -->
<form method="post" enctype="text/plain">

Atribut novalidate

Atribut novalidate menyahdayakan pengesahan terbina dalam pelayar:

<form action="/submit" method="post" novalidate>
  <!-- Validation handled by JavaScript instead -->
  <input type="email" name="email">
  <button type="submit">Submit</button>
</form>

Atribut target pada borang

Atribut target mengawal tempat respons dipaparkan:

<form action="/search" target="_blank">
  <!-- Response opens in a new tab -->
</form>
<!-- Values: _blank, _self, _parent, _top, or a frame name -->
<!-- Rarely used — most forms stay on the same page or use AJAX -->

autocomplete pada borang

Atribut autocomplete mengawal pengisian automatik pelayar:

<!-- Off: disable autofill for the entire form -->
<form autocomplete="off">

<!-- On (default): allow autofill -->
<form autocomplete="on">

<!-- Better: control at the field level:
<input type="email" autocomplete="email">
<input type="current-password" autocomplete="current-password">
-->

Penghantaran Borang dengan JavaScript

Halang penghantaran lalai dan kendalikannya dengan JavaScript:

<form id="contact-form" action="/contact" method="post">
  <input type="text" name="name">
  <button type="submit">Send</button>
</form>

<script>
document.getElementById('contact-form').addEventListener('submit', async (e) => {
  e.preventDefault();  // stop normal browser submission
  const data = new FormData(e.target);
  const res = await fetch('/contact', { method: 'POST', body: data });
  // handle response...
});
</script>

action dan method Bersama

Contoh borang lengkap dengan action dan method yang betul:

<form action="/api/newsletter" method="post">
  <label for="email">Email address</label>
  <input type="email" id="email" name="email" required>
  <button type="submit">Subscribe</button>
</form>
<!-- POST because: creating a subscription = server state change -->

Semakan Pantas

Kaedah borang yang manakah patut digunakan apabila memuat naik fail?

Imbas Kembali: Elemen Borang

Perkara penting tentang elemen borang:

  • action — URL yang menerima data borang
  • method="get" — data dalam URL (carian, penapis)
  • method="post" — data dalam isi kandungan (data sensitif, perubahan keadaan)
  • enctype="multipart/form-data" — diperlukan untuk muat naik fail
  • novalidate — nyahdayakan pengesahan pelayar
Percuma untuk bermula

Pelajari HTML dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
40
Pelajaran
159

Soalan Lazim

Adakah pelajaran “Elemen form: action, method dan enctype” percuma?

Ya — sebanyak 3 pelajaran dalam laluan pembelajaran HTML Academy, termasuk “Elemen form: action, method dan enctype”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus HTML Academy merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Elemen form: action, method dan enctype”?

Sediakan elemen form dengan action, method dan enctype. Anda berlatih HTML Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan HTML Academy?

Tiada pengalaman terdahulu diperlukan. Pembelajaran HTML Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 1 daripada 4.

Berapa lamakah pelajaran “Elemen form: action, method dan enctype” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran HTML Academy ini?

Ya. Setiap pelajaran HTML Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Elemen form: action, method dan enctype
  2. Jenis Input: text, password, email, number dan tel
  3. Elemen label dan Kebolehcapaian
  4. Elemen button: submit, reset dan button
← Kembali ke HTML Academy