function handleGetFormData() {
const name = document.getElementById('name').value;
const city = document.getElementById('city').value;
const email = document.getElementById('email').value;
const zipCode = document.getElementById('zip-code').value;
const status = document.getElementById('status').checked;
const formData = {
name: name,
email: email,
city: city,
zipCode: zipCode,
status: status
};
return formData
}
function isNumber (str){
//jika string kosong
if (str.length === 0) {
return false;
}
for(let i=0; i<str.length;i++){
//jika dia numerik dan ada spasi dia bukan digit angka
if (isNaN(str[i]) || str[i] === ' ') {
return false;
}
}
//jika tidak dia true
return true;
}
function checkboxIsChecked() {
const statusCheckbox = document.getElementById('status');
//checked dia mengembalikan nilai true jika chekbox di centang.
const isChecked = statusCheckbox.checked;
return isChecked;
}
function validateFormData(data) {
// Mengecek apakah objek tidak bernilai null
const isNotNull = data !== null;
// Mengecek apakah nilai dari properti zipCode adalah angka
const isZipCodeNumber = !isNaN(data.zipCode);
// Mengecek apakah attribute checked dari <input> dengan id yaitu status adalah true
const isStatusChecked = document.getElementById('status').checked;
// Mengembalikan true jika semua kondisi terpenuhi, dan false jika tidak
return isNotNull && isZipCodeNumber && isStatusChecked;
}
function submit() {
const data = handleGetFormData();
// Memanggil fungsi validateFormData
const isValid = validateFormData(data);
// Mendapatkan elemen dengan id 'warning'
const warningDiv = document.getElementById('warning');
// Jika isValid adalah false, tampilkan pesan peringatan
if (!isValid) {
warningDiv.textContent = "Periksa form anda sekali lagi.";
} else {
// Hapus teks pesan peringatan jika validasi berhasil
warningDiv.remove();
}
}
// Menghubungkan fungsi submit dengan form menggunakan addEventListener
document.getElementById(‘submit-form’).addEventListener(‘click’, (event) => {
event.preventDefault();
submit();
}); Kak aku udah bikin semua kaya gini tapi no 10 nya masih salah gmn ya? mohon bantuannya