- Joined
- Jun 6, 2012
- Messages
- 890
- Points
- 28
There are many things that can be done with regular expressions, but one of the most useful is validating entry fields in forms on your Web pages
This script asks for an image location and, if it passes the validation, displays the image on the page.
If the user enters something that isn't a valid image file name, the page shows an error, thanks to regular expressions.
When the image name is entered correctly, the image is displayed on the page.
This script asks for an image location and, if it passes the validation, displays the image on the page.
Code:
window.onload = initForms;
function initForms() {
for (var i=0; i< document.forms.length; i++) {
document.forms[i].onsubmit = function() {return validForm();}
}
}
function validForm() {
var allGood = true;
var allTags = document.getElementsByTagName ("*");
for (var i=0; i<allTags.length; i++) {
if (!validTag(allTags[i])) {
allGood = false;
}
}
return false;
function validTag(thisTag) {
var outClass = "";
var allClasses = thisTag.className.split (" ");
for (var j=0; j<allClasses.length; j++) {
outClass += validBasedOnClass(allClasses[j]) + " ";
}
thisTag.className = outClass;
if (outClass.indexOf("invalid") > -1) {
invalidLabel(thisTag.parentNode);
thisTag.focus();
if (thisTag.nodeName == "INPUT") {
thisTag.select();
}
return false;
}
return true;
function validBasedOnClass(thisClass) {
var classBack = "";
switch(thisClass) {
case "":
case "invalid":
break;
case "imgURL":
if (allGood && !imgURL (thisTag.value)) classBack = "invalid ";
default:
classBack += thisClass;
}
return classBack;
}
function imgURL(newURL) {
var re = /^(file|http):\/\/\S+ \/\S+\.(gif|jpg)$/i;
if (re.test(newURL)) {
document.getElementById ("chgImg").src = newURL;
return true;
}
return false;
}
function invalidLabel(parentTag) {
if (parentTag.nodeName == "LABEL") {
parentTag.className += " invalid";
}
}
}
}
When the image name is entered correctly, the image is displayed on the page.