However, in some situation, you have to use server side validation
- JavaScript is not available on the device
- JavaScript is turned off by user
- JavaScript is disabled by network administrator
But that is not our topic today. :)
So, how to validate a form with JavaScript?
Let us see how the form looks like
Validation Code
function saveChanges() { var firstName = document.getElementById("firstName"); var lastName = document.getElementById("lastName"); var phoneNumber = document.getElementById("phoneNumber"); var email = document.getElementById("email"); var password = document.getElementById("password"); var errMsg = ""; if (firstName.value === "") { errMsg += "First Name is empty. \n"; firstName.style.borderColor = "red"; } if (lastName.value === "") { errMsg += "Last Name is empty. \n"; lastName.style.borderColor = "red"; } if (phoneNumber.value.length > 30) { errMsg += "Phone number is too long, maxium 30 characters. \n"; phoneNumber.style.borderColor = "red"; } if (!pattern.test(email.value)) { errMsg += "Not a valid email. \n"; email.style.borderColor = "red"; } if (password.value.length < 8) { errMsg += "Your password is too short, minimum 8 characters. \n"; password.style.borderColor = "red"; } if (!((password.value.match(/[a-z]/)) && (password.value.match(/[A-Z]/)))) { errMsg += "Your password should have both lower and uppercase characters. \n"; password.style.borderColor = "red"; } if (!password.value.match(/\d+/)) { errMsg += "Your password should have at least one number. \n"; password.style.borderColor = "red"; } if (!password.value.match(/.[!,@,#,$,%,^,&,*,?,_,~,-,(,)]/)) { errMsg += "Your password should have at least one special character. \n"; password.style.borderColor = "red"; } if (errMsg != "") { alert(errMsg); return false; } return true; }
Email Pattern
// var pattern = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; //
Example of Validation
The Form
No comments:
Post a Comment