/**/ /**/ function check_email(idCampo) { var email = document.getElementById(idCampo).value; var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/; return filter.test(email); } /**/ function check_date(idCampo,format) { var strValue = document.getElementById(idCampo).value; var objRegExp = /^\d{1,2}(\-|\/|\.)\d{1,2}\1\d{4}$/ if (format.toString()=='DMY') { var indexDay = 0; var indexMonth = 1; var indexYear = 2; } else if (format=='MDY') { var indexDay = 1; var indexMonth = 0; var indexYear = 2; } //check to see if in correct format if(!objRegExp.test(strValue)) { return false; //doesn't match pattern, bad date } else { var strSeparator = strValue.substring(2,3) //find date separator var arrayDate = strValue.split(strSeparator); //split date into month, day, year //create a lookup for months not equal to Feb. var arrayLookup = { '01' : 31,'03' : 31, '04' : 30,'05' : 31,'06' : 30,'07' : 31,'08' : 31,'09' : 30,'10' : 31,'11' : 30,'12' : 31} var intDay = parseInt(arrayDate[indexDay],10); //check if month value and day value agree if(arrayLookup[arrayDate[indexMonth]] != null) { if(intDay <= arrayLookup[arrayDate[indexMonth]] && intDay != 0) return true; //found in lookup table, good date } //check for February (bugfix 20050322) //bugfix for parseInt kevin //bugfix biss year O.Jp Voutat var intMonth = parseInt(arrayDate[indexMonth],10); if (intMonth == 2) { var intYear = parseInt(arrayDate[indexYear]); if (intDay > 0 && intDay < 29) { return true; } else if (intDay == 29) { if ((intYear % 4 == 0) && (intYear % 100 != 0) || (intYear % 400 == 0)) { // year div by 4 and ((not div by 100) or div by 400) ->ok return true; } } } } return false; //any other values, bad date } /**/ function check_age(idCampo) { var age = document.getElementById(idCampo).value; var filter = /^([0-9]{1,3})$/; return filter.test(age); }