Lucia LADDERHTML Fundamentals Chapter 07

Memuat progres belajar…

HTML-07-04 · LESSON 4 / 4 · ± 11 MENIT

Built-in Validation & Submission

Setelah lesson ini, kamu dapat menambahkan validasi HTML bawaan dan menjelaskan batas pengiriman form tanpa backend.

MULAI DARI SEBUAH PERTANYAAN

Pemahaman berawal dari pertanyaan.

Pengguna lupa mengisi email. Daripada membiarkan mereka menebak, browser dapat memberi petunjuk langsung berdasarkan aturan HTML sederhana.

Menambahkan validasi HTML bawaan dan menjelaskan batas pengiriman form tanpa backend.

PAHAMI KONSEPNYA

01

Aturan yang sudah disediakan browser

Required menandai isian wajib. Type email memeriksa bentuk alamat, bukan apakah kotak email itu benar-benar ada. Minlength membatasi panjang minimum teks; min dan max membatasi nilai number. Tulis juga petunjuk aturan di label atau teks agar orang tahu sebelum salah.

02

Validasi bukan keamanan server

Validasi browser membantu pengguna, tetapi dapat dilewati. Aplikasi nyata tetap harus memeriksa data di server. Required="false" tetap wajib karena required adalah atribut boolean; hapus atribut jika isian opsional.

03

Get, post, dan batas demo

Method get biasanya membawa data melalui query URL; post membawa data melalui body permintaan. Post sendiri bukan enkripsi: perlindungan koneksi memerlukan HTTPS. Action menentukan tujuan pemrosesan. Preview Lucia memblokir pengiriman form; tidak ada data yang dikirim atau pesan “berhasil terkirim”. Untuk mencoba validasi di sini, gunakan tombol Coba validasi form di panel preview.

CONTOH / KONTEKS

Contoh memperjelas konsep.

CONTOH HTML

<form method="get">
  <label for="email">Email (wajib)</label>
  <input id="email" name="email" type="email" required>
  <label for="pesan">Pesan (minimal 10 karakter)</label>
  <textarea id="pesan" name="pesan" required minlength="10"></textarea>
  <label for="peserta">Jumlah peserta (1–5)</label>
  <input id="peserta" name="peserta" type="number" min="1" max="5" required>
  <p>Demonstrasi lokal; tidak mengirim data.</p>
  <button type="button">Demo tanpa pengiriman</button>
</form>

HASIL DI BROWSER

Aturan melekat pada kontrol. Tombol biasa tidak memicu pengiriman; panel validasi Lucia menyediakan percobaan terpisah dengan kontrol native yang aman.

COBA BERSAMA

Praktik memperjelas pemahaman.

01 Form memakai type email dan required. Apakah server boleh langsung mempercayai data?

Boleh mencoba berkali-kali. Tugas mandiri berikutnya menjadi bukti penyelesaian lesson.

TULIS · LIHAT · PAHAMI

Aturan yang membantu pengisi

Perbaiki form: email wajib, textarea pesan wajib minimal 10 karakter, jumlah peserta wajib 1–5. Semua isian berlabel. Tambahkan teks “Demo, data tidak dikirim” dan gunakan tombol type button.

HTML
index.htmlHTMLLn 1, Col 16 baris2 spasi
Pintasan & bantuan editor
Ctrl + Space
Tampilkan saran · ↑ ↓ memilih · Enter menerima · Esc menutup
Shift + Alt + F
Rapikan kode
Ctrl/⌘ + F
Cari dan ganti teks
Ctrl/⌘ + [ / ]
Kurangi / tambah indentasi
Tab
Pindah fokus; dalam snippet, pindah ke isian berikutnya. Esc lalu Tab untuk keluar.
Ctrl/⌘ + Z
Batalkan perubahan, termasuk format

Saran berasal dari bahasa, snippet, dan konteks lokal kode. Format berjalan di browser.

Preview dokumen

Ctrl/⌘ + Enter menjalankan preview. Preview memakai gaya bantu baca. Script dan pengiriman form dinonaktifkan. Ilustrasi contoh: assets/observatory.svg.

Kembali ke kode awal?

Isi semua berkas pada tugas ini akan diganti dengan kode awal. Lesson yang sudah tuntas tetap tercatat.

BAWA PEMAHAMAN INI BERSAMAMU

Praktik memberi dasar.

  • HTML menyediakan aturan validasi dasar.
  • Validasi klien tidak menggantikan pemeriksaan server.
  • Form demo ini tidak mengirim data; get dan post bukan backend.
FormDebugging

Lesson tuntas setelah tugas mandiri memenuhi tujuan. Kamu bebas membaca kembali kapan saja.

Hadapi Chapter Trial →

Lucia LEXICON / DEFINISI SINGKAT

Pahami konsep ini

Cari pengetahuan di Lucia

LADDER / MATERI BELAJAR

What is HTML?HTML FundamentalsYour First HTML DocumentHTML FundamentalsInside the HeadHTML FundamentalsEdit, Preview, RepeatHTML FundamentalsTrial 1HTML FundamentalsTags vs. ElementsHTML FundamentalsUnderstanding AttributesHTML FundamentalsNesting & Void ElementsHTML FundamentalsComments & Character ReferencesHTML FundamentalsTrial 2HTML FundamentalsHeadings & ParagraphsHTML FundamentalsEmphasis, Importance & QuotesHTML FundamentalsListsHTML FundamentalsText with MeaningHTML FundamentalsTrial 3HTML FundamentalsLinks & URLsHTML FundamentalsFiles, Folders & NavigationHTML FundamentalsImages & Alternative TextHTML FundamentalsFigures, Audio & Video BasicsHTML FundamentalsTrial 4HTML FundamentalsPage LandmarksHTML FundamentalsSections & ArticlesHTML FundamentalsDiv, Span, ID & ClassHTML FundamentalsAccessible NavigationHTML FundamentalsTrial 5HTML FundamentalsWhen to Use a TableHTML FundamentalsRows & CellsHTML FundamentalsCaptions & HeadingsHTML FundamentalsAccessible TablesHTML FundamentalsTrial 6HTML FundamentalsForms & LabelsHTML FundamentalsInputs & Field ValuesHTML FundamentalsMore Form ControlsHTML FundamentalsBuilt-in Validation & SubmissionHTML FundamentalsTrial 7HTML FundamentalsPlan Your WebsiteHTML FundamentalsBuild the StructureHTML FundamentalsAdd Media & FormsHTML FundamentalsValidate, Debug & ReviewHTML FundamentalsMy First HTML WebsiteHTML Fundamentals

LEXICON / KONSEP

BrowserAplikasi untuk membuka, menampilkan, dan berinteraksi dengan halaman web.HTTPProtokol pertukaran permintaan dan respons antara klien dan server web.HTMLBahasa markup untuk memberi struktur dan makna pada konten web.JSONFormat teks untuk menyimpan atau bertukar data terstruktur.DNSSistem penamaan terdistribusi yang menghubungkan nama domain dengan informasi seperti alamat IP.HTTPSHTTP yang memakai TLS untuk melindungi pertukaran data selama perjalanan.ServerPerangkat lunak atau komputer yang menyediakan layanan kepada klien.URLAlamat yang menunjukkan lokasi suatu sumber daya beserta cara mengaksesnya.Nama domainNama berhierarki yang digunakan untuk mengenali suatu bagian dari sistem penamaan internet.TautanRujukan yang dapat diikuti untuk menuju sumber daya atau bagian dokumen lain.CSSBahasa stylesheet untuk mengatur tampilan dan tata letak dokumen web.JavaScriptBahasa pemrograman yang dapat menambahkan perilaku dinamis pada halaman web.DOMRepresentasi dokumen sebagai struktur objek yang dapat dibaca dan diubah lewat API.Object JSONKumpulan pasangan nama dan nilai dalam JSON, ditulis di antara kurung kurawal.ArrayUrutan nilai dalam JSON, ditulis di antara kurung siku.StringUrutan karakter yang mewakili teks; dalam JSON dibungkus tanda petik ganda.KompresiCara merepresentasikan data dengan ukuran yang lebih kecil.TransparansiKemampuan gambar untuk membiarkan latar di belakangnya terlihat seluruhnya atau sebagian.Gambar rasterGambar yang tersusun dari kisi piksel dengan dimensi tertentu.Teks alternatifTeks yang menyampaikan fungsi atau makna gambar ketika gambar tidak dapat dilihat.HTML elementUnit markup yang memberi struktur atau makna pada konten.HTML tagPenanda dalam kurung sudut yang membuka atau menutup elemen.HTML attributeInformasi tambahan pada tag pembuka sebuah elemen.HeadBagian dokumen HTML yang menyimpan metadata halaman.TitleNama dokumen HTML yang biasanya tampil pada tab dan bookmark browser.MetaElemen untuk menyatakan metadata yang tidak dicakup elemen metadata lainnya.Character encodingAturan untuk menghubungkan karakter teks dengan representasi byte.ViewportArea tempat browser menampilkan halaman pada suatu perangkat.Void elementElemen HTML yang tidak mempunyai konten anak atau tag penutup.Character referenceCara menulis karakter melalui referensi bernama atau numerik dalam HTML.HeadingElemen h1 hingga h6 yang menyatakan tingkat judul pada isi dokumen.Semantic HTMLPenggunaan elemen HTML berdasarkan makna dan fungsi kontennya.AccessibilityPraktik membuat konten dan interaksi dapat digunakan oleh orang dengan beragam kemampuan.HTML listStruktur untuk mengelompokkan item, dengan atau tanpa urutan yang bermakna.Relative pathAlamat sumber daya yang dihitung dari lokasi atau base URL dokumen.Figure & figcaptionElemen untuk mengelompokkan konten mandiri dengan keterangan yang terlihat.LandmarkBagian utama halaman yang membantu pengguna mengenali dan menavigasi strukturnya.HTML tableStruktur baris dan kolom untuk menyajikan data yang memiliki hubungan dua dimensi.HTML formKelompok kontrol yang memungkinkan pengguna memasukkan atau memilih data.Form labelNama yang menjelaskan kontrol form dan terhubung secara programatis dengannya.HTML validationPemeriksaan kesesuaian markup atau, pada form, pemenuhan aturan isian yang dinyatakan.