Click to See Complete Forum and Search --> : JavaScript - Help with Form Validator


argrafic
02-22-2008, 11:40 AM
i have the following validator:


function formValidator(){
// Make quick references to our fields
var nom = document.getElementById('nombre');
var pes = document.getElementById('peso');
var eda = document.getElementById('edad');
var sex = document.getElementById('sexo');
var hrt = document.getElementById('TOTAL');

// Check each input in the order that it appears in the form!
if(isAlphanumeric(nom, "Nombre es requerido.")){
if(isNumeric(pes, "Peso es requerido y debe ser un número.")){
if(isNumeric(eda, "Edad es requerido y debe ser un número.")){
if(madeSelection(sex, "Sexo es requerido.")){
if(validate_required(hrt, "El total de horas debe de sumar 24.")) {
return true;
}
}
}
}
}


return false;

}

function isEmpty(elem, helperMsg){
if(elem.value.length == 0){
alert(helperMsg);
elem.focus(); // set the focus to this input
return true;
}
return false;
}

function isNumeric(elem, helperMsg){
var numericExpression = /^[0-9]+$/;
if(elem.value.match(numericExpression)){
return true;
}else{
alert(helperMsg);
elem.focus();
return false;
}
}

function isAlphabet(elem, helperMsg){
var alphaExp = /^[a-zA-Z]+$/;
if(elem.value.match(alphaExp)){
return true;
}else{
alert(helperMsg);
elem.focus();
return false;
}
}

function isAlphanumeric(elem, helperMsg){
var alphaExp = /^[0-9a-zA-Z]+$/;
if(elem.value.match(alphaExp)){
return true;
}else{
alert(helperMsg);
elem.focus();
return false;
}
}

function lengthRestriction(elem, min, max){
var uInput = elem.value;
if(uInput.length >= min && uInput.length <= max){
return true;
}else{
alert("Please enter between " +min+ " and " +max+ " characters");
elem.focus();
return false;
}
}

function madeSelection(elem, helperMsg){
if(elem.value == "Please Choose"){
alert(helperMsg);
elem.focus();
return false;
}else{
return true;
}
}

function emailValidator(elem, helperMsg){
var emailExp = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;
if(elem.value.match(emailExp)){
return true;
}else{
alert(helperMsg);
elem.focus();
return false;
}
}

function validate_required(field,alerttxt){
with (field)
{
if (value != 24) {
alert(alerttxt);
return false;
} else {
return true
}
}
}


i have an issue with the isAlphanumeric validation form, because when people enter a name with spaces it says that it sends teh message that the name fieldname is empty and should be filled.

how can i correct it so that it "reads" spaces?

thanks!

Weedpacket
02-23-2008, 12:15 AM
Add a space to the list of characters in the expression misnamed "alphaExp".

But then it's not really "alphanumeric" any more, because a space is not an alphanumeric character.

Then again, how many people have digits in their name?

argrafic
02-26-2008, 06:14 PM
thanks for the help...

but i found the solution... and it was pretty simple


function isEmpty(elem, helperMsg){
if(elem.value.length == 0){
alert(helperMsg);
elem.focus(); // set the focus to this input
return true;
}
return false;
}


that part (in the same code) helped me validate what i wanted...

Weedpacket
02-27-2008, 12:44 AM
So '$%)!!!"' would be valid, then?