Elemen button: submit reset button
Picu pengiriman form, pengaturan ulang, atau tindakan khusus dengan button.
Elemen button: submit reset button adalah pelajaran HTML Academy gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar HTML Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus HTML Academy mencakup 4 pelajaran total.
Elemen button
Elemen <button> adalah cara utama untuk membuat kontrol yang dapat diklik:
<button type="submit">Submit</button>
<button type="reset">Clear Form</button>
<button type="button">Do Something</button>
<!-- Three types, each with a different default behavior -->
<!-- Always specify type — the default is submit inside forms -->type=submit
type="submit" mengirimkan formulir saat diklik:
<form action="/register" method="post">
<input type="email" name="email">
<button type="submit">Create Account</button>
</form>
<!-- Triggers form validation, then sends the form data -->
<!-- Also triggered by pressing Enter in most text inputs -->type=reset
type="reset" menghapus semua bidang formulir dan mengembalikannya ke nilai bawaan:
<form>
<input type="text" name="name" value=""> <!-- empty default -->
<input type="number" name="qty" value="1"> <!-- default: 1 -->
<button type="reset">Clear</button>
</form>
<!-- Clicking reset restores qty to 1 and clears name -->
<!-- Use sparingly — users often accidentally reset forms -->type=button
type="button" tidak melakukan apa pun secara bawaan — pasang JavaScript:
<button type="button" id="toggle-theme">Toggle Dark Mode</button>
<script>
document.getElementById('toggle-theme').addEventListener('click', () => {
document.body.classList.toggle('dark');
});
</script>
<!-- type="button" prevents accidental form submission
Always use this for non-submit buttons -->button dibandingkan dengan input[type=submit]
<button> lebih disarankan daripada <input type="submit">:
<!-- Old way (limited): -->
<input type="submit" value="Submit">
<!-- Modern way (flexible — can contain HTML): -->
<button type="submit">
<svg><!-- icon --></svg>
Submit Form
</button>
<!-- button can contain icons, emphasis, and any inline HTML
input type=submit can only have plain text via the value attribute -->Tombol yang Dinonaktifkan
Nonaktifkan tombol dengan atribut disabled:
<button type="submit" disabled>Submit</button>
<!-- Disabled buttons:
- Cannot be clicked
- Not in tab order
- NOT submitted with the form
- Browser renders them grayed out -->
<!-- Enable/disable with JavaScript: -->
btn.disabled = true;
btn.disabled = false;Pola Status Pemuatan
Tampilkan status pemuatan saat formulir sedang dikirimkan:
<button type="submit" id="submit-btn">
<span id="btn-text">Submit</span>
<span id="btn-spinner" hidden aria-hidden="true">⏳</span>
</button>
<script>
form.addEventListener('submit', () => {
document.getElementById('submit-btn').disabled = true;
document.getElementById('btn-text').textContent = 'Submitting...';
document.getElementById('btn-spinner').hidden = false;
document.getElementById('btn-spinner').removeAttribute('aria-hidden');
});
</script>Penggantian formaction dan formmethod
Ganti tindakan/metode formulir pada tombol tertentu:
<form action="/save" method="post">
<input type="text" name="title">
<!-- Save: uses form defaults -->
<button type="submit">Save Draft</button>
<!-- Publish: overrides action and method -->
<button type="submit" formaction="/publish" formmethod="post">
Publish Now
</button>
</form>Tombol dengan ARIA
Tombol kustom memerlukan ARIA jika tampilannya berbeda dari tombol asli:
<!-- Icon-only button -->
<button type="button" aria-label="Close dialog">
<svg aria-hidden="true"><!-- X icon --></svg>
</button>
<!-- Toggle button -->
<button type="button" aria-pressed="false" id="bold-btn">
Bold
</button>
<script>
document.getElementById('bold-btn').addEventListener('click', function() {
const pressed = this.getAttribute('aria-pressed') === 'true';
this.setAttribute('aria-pressed', !pressed);
});
</script>Praktik Terbaik Aksesibilitas Tombol
Daftar periksa aksesibilitas tombol:
- Selalu tentukan
type— jangan pernah mengandalkan nilai bawaan - Gunakan
aria-labeluntuk tombol yang hanya berisi ikon - Gunakan
aria-presseduntuk tombol toggle - Tombol yang dinonaktifkan: pertimbangkan penggunaan
aria-disabled="true"+ JavaScript agar tombol tetap dapat menerima fokus - Jangan pernah menggunakan
<div>atau<span>sebagai tombol
Area Klik dan Target Sentuhan
Tombol harus memiliki ukuran target ketukan yang memadai bagi pengguna perangkat sentuh:
button {
min-height: 44px; /* Apple HIG minimum */
min-width: 44px; /* WCAG 2.5.5 (AAA) recommends 44x44 -->
padding: 0.5rem 1rem;
cursor: pointer;
}
/* Increase tap area without changing visual size: */
button {
position: relative;
}
button::before {
content: '';
position: absolute;
inset: -8px;
}Pemeriksaan Cepat
Apa yang terjadi jika Anda tidak mencantumkan atribut type pada tombol di dalam formulir?
Ringkasan: Elemen button
Hal-hal penting tentang tombol:
type="submit"— mengirimkan formulirtype="reset"— mengatur ulang semua bidang ke nilai bawaantype="button"— tidak memiliki perilaku bawaan; pasang JavaScript- Selalu tentukan type — nilai bawaannya adalah submit
- Lebih utamakan
<button>daripada<input type="submit"> - Gunakan
aria-labeluntuk tombol yang hanya berisi ikon
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Elemen button: submit reset button” gratis?
Ya — teks lengkap “Elemen button: submit reset button” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus HTML Academy, upgrade ke CoddyKit PRO. Kursus HTML Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Elemen button: submit reset button”?
Picu pengiriman form, pengaturan ulang, atau tindakan khusus dengan button. Kamu berlatih HTML Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai HTML Academy?
Tidak diperlukan pengalaman sebelumnya. HTML Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.
Berapa lama pelajaran “Elemen button: submit reset button” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran HTML Academy ini?
Ya. Setiap pelajaran HTML Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Elemen form action method enctype
- Jenis Input text password email number tel
- Elemen label dan Aksesibilitas
- Elemen button: submit reset button