Tugas 4 - Membuat Form Validation Menggunakan JQuery
11 Oktober 2022
Pada tugas 5 ini kita dimina membuat form validation dengan menggunakan bantuan JQuery untuk memvalidasi setiap inputan user.
Adapun beberapa form validation yang dibuat adalah sebagai berikut:
- Semua field inputan harus diisi (required).
- Inputan UMUR diisi dengan angka antara 0-100.
- Inputan ALAMAT EMAIL diisi dengan format penulisan email.
- Inputan ALAMAT SITUS diisi dengan format penulisan situs.
- Inputan PASSWORD dan ULANGI PASSWORD harus sama.
- Inputan TANGGAL LAHIR diisi dengan format DD/MM/YYYY.
- Inputan NIM hanya boleh diisi 10 digit angka (tidak boleh diisi huruf).
Screenshoot
Source Code
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<html lang="en"> | |
<head> | |
<meta charset="UTF-8" /> | |
<meta http-equiv="X-UA-Compatible" content="IE=edge" /> | |
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> | |
<link rel="stylesheet" href="style.css" /> | |
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script> | |
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.19.5/jquery.validate.js"></script> | |
<script src="https://cdn.jsdelivr.net/jquery.validation/1.16.0/additional-methods.min.js"></script> | |
<title>JQUERY | Form Validation</title> | |
<script type="text/javascript"> | |
$(document).ready(function () { | |
$("#frm-mhs").validate({ | |
rules: { | |
nim: { | |
digits: true, | |
minlength: 10, | |
maxlength: 10, | |
}, | |
tgl: { | |
indonesianDate: true, | |
}, | |
umur: { | |
digits: true, | |
range: [0, 100], | |
}, | |
email: { | |
email: true, | |
}, | |
situs: { | |
url: true, | |
}, | |
pass2: { | |
equalTo: "#pass1", | |
}, | |
}, | |
messages: { | |
nim: { | |
required: "Kolom nim harus diisi", | |
minlength: "Kolom nim harus terdiri dari 10 digit", | |
maxlength: "Kolom nim harus terdiri dari 10 digit", | |
}, | |
email: { | |
required: "Alamat email harus diisi", | |
email: "Format email tidak valid", | |
}, | |
pass2: { | |
equalTo: "Password tidak sama", | |
}, | |
}, | |
}); | |
}); | |
$.validator.addMethod( | |
"indonesianDate", | |
function (value, element) { | |
// put your own logic here, this is just a (crappy) example | |
return value.match(/^\d\d?\/\d\d?\/\d\d\d\d$/); | |
}, | |
"Please enter a date in the format DD/MM/YYYY" | |
); | |
</script> | |
</head> | |
<body> | |
<main> | |
<h1>Input Data Mahasiswa</h1> | |
<form method="get" id="frm-mhs"> | |
<label for="nim" class="labelfrm">NIM: </label> | |
<input type="text" name="nim" id="nim" maxlength="10" size="15" class="required" /> | |
<label for="nama" class="labelfrm">NAMA: </label> | |
<input type="text" name="nama" id="nama" size="30" class="required" /> | |
<label for="alamat" class="labelfrm">ALAMAT: </label> | |
<textarea name="alamat" id="alamat" cols="40" rows="4" class="required"></textarea> | |
<label for="tgl" class="labelfrm">TANGGAL LAHIR: </label> | |
<input type="text" name="tgl" id="tgl" maxlength="10" size="15" class="required" /> | |
<label for="umur" class="labelfrm">UMUR: </label> | |
<input type="text" name="umur" id="umur" maxlength="3" size="7" class="required" /> | |
<label for="email" class="labelfrm">ALAMAT EMAIL: </label> | |
<input type="text" name="email" id="email" size="50" class="required" /> | |
<label for="situs" class="labelfrm">ALAMAT SITUS: </label> | |
<input type="text" name="situs" id="situs" size="50" class="required" /> | |
<label for="pass1" class="labelfrm">PASSWORD: </label> | |
<input type="password" name="pass1" id="pass1" size="15" class="required" /> | |
<label for="pass2" class="labelfrm">ULANGI PASSWORD: </label> | |
<input type="password" name="pass2" id="pass2" size="15" class="required" /> | |
<label for="submit" class="labelfrm"> </label> | |
<input type="submit" name="Submit" value="Submit" class="required" /> | |
</form> | |
</main> | |
</body> | |
</html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@400;700&display=swap"); | |
*, | |
*::before, | |
*::after { | |
box-sizing: border-box; | |
margin: 0; | |
padding: 0; | |
} | |
html { | |
scroll-behavior: smooth; | |
} | |
body { | |
font-family: "Poppins", sans-serif; | |
min-height: 100vh; | |
display: flex; | |
justify-content: center; | |
align-items: center; | |
flex-direction: column; | |
} | |
main { | |
width: 90%; | |
background-color: lightblue; | |
padding: 24px; | |
font-size: 16px; | |
border-radius: 12px; | |
box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px; | |
} | |
h1 { | |
font-size: 24px; | |
text-align: center; | |
} | |
.labelfrm { | |
display: flex; | |
font-size: small; | |
margin-top: 5px; | |
} | |
/* .wrapper { | |
margin-bottom: 18px; | |
} */ | |
input, | |
textarea { | |
width: 100%; | |
padding: 2px 6px; | |
border-radius: 6px; | |
outline: none; | |
border: 2px solid white; | |
} | |
input:focus, | |
input:hover, | |
textarea:focus, | |
textarea:hover { | |
border: 2px solid skyblue; | |
} | |
input[type="submit"] { | |
width: fit-content; | |
padding: 2px 18px; | |
} | |
input[type="submit"]:hover { | |
background-color: skyblue; | |
} | |
.error { | |
font-size: small; | |
color: red; | |
} | |
@media only screen and (min-width: 480px) { | |
main { | |
width: 60%; | |
} | |
} | |
@media only screen and (min-width: 1024px) { | |
main { | |
width: 35%; | |
} | |
} |
Sumber :
Nama : Arief Badrus Sholeh
NRP : 5025201228
Kelas : Pemrograman Web A
Tahun : 2022/2023
Komentar
Posting Komentar