Difference between revisions of "Event handling dan validasi form"
Jump to navigation
Jump to search
Onnowpurbo (talk | contribs) (Created page with "Siap! Kita buat **modul Event Handling dan Validasi Form menggunakan JavaScript**, lengkap dengan contoh **tanpa menggunakan Microsoft Visual Studio Code**, khusus untuk Ubunt...") |
Onnowpurbo (talk | contribs) |
||
| Line 1: | Line 1: | ||
| − | + | ==Modul: Event Handling dan Validasi Form di JavaScript== | |
| − | + | ==Tujuan Pembelajaran== | |
| + | * Mahasiswa mampu memahami konsep '''event handling''' di JavaScript. | ||
| + | * Mahasiswa dapat membuat '''validasi form sederhana''' menggunakan JavaScript. | ||
| + | * Mahasiswa dapat menguji kode menggunakan '''tool bawaan Ubuntu (tanpa VS Code)'''. | ||
| − | + | ==1. 🧠 Konsep Event Handling di JavaScript== | |
| − | + | '''Event Handling''' adalah proses menangani interaksi pengguna (klik, ketik, submit, dll.) menggunakan JavaScript. | |
| − | |||
| − | |||
| − | |||
| − | + | '''Contoh Dasar: Klik Tombol''' | |
| − | + | <!-- Simpan sebagai file: event.html --> | |
| + | <!DOCTYPE html> | ||
| + | <html> | ||
| + | <head> | ||
| + | <title>Contoh Event</title> | ||
| + | </head> | ||
| + | <body> | ||
| + | <button id="klikSaya">Klik Saya</button> | ||
| + | <p id="pesan"></p> | ||
| + | |||
| + | <script> | ||
| + | document.getElementById("klikSaya").addEventListener("click", function() { | ||
| + | document.getElementById("pesan").innerText = "Tombol telah diklik!"; | ||
| + | }); | ||
| + | </script> | ||
| + | </body> | ||
| + | </html> | ||
| − | ** | + | '''Cara menjalankan:''' |
| + | * Simpan file sebagai `event.html` | ||
| + | * Buka di browser: klik kanan → '''Open With Firefox/Chrome''' | ||
| − | |||
| − | + | ==2. ✅ Validasi Form Sederhana== | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | '''Contoh: Cek Nama Tidak Kosong''' | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | <!-- Simpan sebagai file: validasi.html --> | |
| − | - Simpan file | + | <!DOCTYPE html> |
| − | + | <html> | |
| + | <head> | ||
| + | <title>Form Validasi</title> | ||
| + | </head> | ||
| + | <body> | ||
| + | <form id="formulir"> | ||
| + | Nama: <input type="text" id="nama"><br> | ||
| + | <input type="submit" value="Kirim"> | ||
| + | </form> | ||
| + | <p id="peringatan" style="color:red;"></p> | ||
| + | |||
| + | <script> | ||
| + | document.getElementById("formulir").addEventListener("submit", function(event) { | ||
| + | let nama = document.getElementById("nama").value; | ||
| + | if (nama.trim() === "") { | ||
| + | event.preventDefault(); // mencegah form terkirim | ||
| + | document.getElementById("peringatan").innerText = "Nama tidak boleh kosong!"; | ||
| + | } | ||
| + | }); | ||
| + | </script> | ||
| + | </body> | ||
| + | </html> | ||
| − | + | '''Catatan:''' | |
| + | * `event.preventDefault()` mencegah form mengirim jika input kosong. | ||
| − | |||
| − | + | ==3. 🛠 Tools di Ubuntu 24.04 (Tanpa VS Code)== | |
| − | + | '''Text Editor:''' | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | * '''Gedit''': GUI Editor bawaan GNOME. | |
| − | + | ||
| − | + | gedit event.html | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | * '''Nano''': Editor teks terminal. | |
| − | + | ||
| + | nano validasi.html | ||
| − | + | * '''Mousepad / Pluma / Leafpad''': Tergantung desktop environment. | |
| − | + | '''Browser untuk testing:''' | |
| − | + | * '''Firefox''' atau '''Chromium''' | |
| − | + | ||
| − | + | firefox event.html | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | ==4. 📦 Tambahan: Validasi Multiple Field== | |
| − | + | <!-- Simpan sebagai file: multi_validasi.html --> | |
| + | <!DOCTYPE html> | ||
| + | <html> | ||
| + | <head> | ||
| + | <title>Validasi Lengkap</title> | ||
| + | </head> | ||
| + | <body> | ||
| + | <form id="formulir"> | ||
| + | Nama: <input type="text" id="nama"><br> | ||
| + | Email: <input type="email" id="email"><br> | ||
| + | <input type="submit" value="Submit"> | ||
| + | </form> | ||
| + | <p id="peringatan" style="color:red;"></p> | ||
| + | |||
| + | <script> | ||
| + | document.getElementById("formulir").addEventListener("submit", function(e) { | ||
| + | let nama = document.getElementById("nama").value; | ||
| + | let email = document.getElementById("email").value; | ||
| + | let error = ""; | ||
| + | |||
| + | if (nama.trim() === "") { | ||
| + | error += "Nama harus diisi. "; | ||
| + | } | ||
| + | if (!email.includes("@")) { | ||
| + | error += "Email tidak valid. "; | ||
| + | } | ||
| + | |||
| + | if (error !== "") { | ||
| + | e.preventDefault(); | ||
| + | document.getElementById("peringatan").innerText = error; | ||
| + | } | ||
| + | }); | ||
| + | </script> | ||
| + | </body> | ||
| + | </html> | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | ==📚 Tugas Mahasiswa== | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | 1. Buat form pendaftaran yang terdiri dari: | |
| − | + | * Nama lengkap | |
| − | + | * Email | |
| − | + | * Nomor telepon | |
| − | + | * Checkbox "Saya setuju dengan syarat dan ketentuan" | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
2. Validasi semua input: | 2. Validasi semua input: | ||
| − | + | * Semua harus diisi | |
| − | + | * Email harus valid | |
| − | + | * Nomor telepon hanya angka | |
| − | + | * Checkbox harus dicentang | |
| − | + | ==Pranala Menarik== | |
| − | + | * [[Web Programming]] | |
Latest revision as of 19:05, 6 April 2025
Modul: Event Handling dan Validasi Form di JavaScript
Tujuan Pembelajaran
- Mahasiswa mampu memahami konsep event handling di JavaScript.
- Mahasiswa dapat membuat validasi form sederhana menggunakan JavaScript.
- Mahasiswa dapat menguji kode menggunakan tool bawaan Ubuntu (tanpa VS Code).
1. 🧠 Konsep Event Handling di JavaScript
Event Handling adalah proses menangani interaksi pengguna (klik, ketik, submit, dll.) menggunakan JavaScript.
Contoh Dasar: Klik Tombol
<!DOCTYPE html> <html> <head> <title>Contoh Event</title> </head> <body> <button id="klikSaya">Klik Saya</button>
<script>
document.getElementById("klikSaya").addEventListener("click", function() {
document.getElementById("pesan").innerText = "Tombol telah diklik!";
});
</script>
</body>
</html>
Cara menjalankan:
- Simpan file sebagai `event.html`
- Buka di browser: klik kanan → Open With Firefox/Chrome
2. ✅ Validasi Form Sederhana
Contoh: Cek Nama Tidak Kosong
<!DOCTYPE html>
<html>
<head>
<title>Form Validasi</title>
</head>
<body>
<form id="formulir">
Nama: <input type="text" id="nama">
<input type="submit" value="Kirim">
</form>
<script>
document.getElementById("formulir").addEventListener("submit", function(event) {
let nama = document.getElementById("nama").value;
if (nama.trim() === "") {
event.preventDefault(); // mencegah form terkirim
document.getElementById("peringatan").innerText = "Nama tidak boleh kosong!";
}
});
</script>
</body>
</html>
Catatan:
- `event.preventDefault()` mencegah form mengirim jika input kosong.
3. 🛠 Tools di Ubuntu 24.04 (Tanpa VS Code)
Text Editor:
- Gedit: GUI Editor bawaan GNOME.
gedit event.html
- Nano: Editor teks terminal.
nano validasi.html
- Mousepad / Pluma / Leafpad: Tergantung desktop environment.
Browser untuk testing:
- Firefox atau Chromium
firefox event.html
4. 📦 Tambahan: Validasi Multiple Field
<!DOCTYPE html>
<html>
<head>
<title>Validasi Lengkap</title>
</head>
<body>
<form id="formulir">
Nama: <input type="text" id="nama">
Email: <input type="email" id="email">
<input type="submit" value="Submit">
</form>
<script>
document.getElementById("formulir").addEventListener("submit", function(e) {
let nama = document.getElementById("nama").value;
let email = document.getElementById("email").value;
let error = "";
if (nama.trim() === "") {
error += "Nama harus diisi. ";
}
if (!email.includes("@")) {
error += "Email tidak valid. ";
}
if (error !== "") {
e.preventDefault();
document.getElementById("peringatan").innerText = error;
}
});
</script>
</body>
</html>
📚 Tugas Mahasiswa
1. Buat form pendaftaran yang terdiri dari:
- Nama lengkap
- Nomor telepon
- Checkbox "Saya setuju dengan syarat dan ketentuan"
2. Validasi semua input:
- Semua harus diisi
- Email harus valid
- Nomor telepon hanya angka
- Checkbox harus dicentang