function validate_form(strForm) { var error = false; var errEmail = ""; reset('lblName');reset('lblCompany');reset('lblEmail');reset('lblPhone');reset('lblComments'); //ENFORCE MAX LENGTH FOR TEXT AREA if (isValidLength(strForm.comments) == false) error = true; //CHECK FOR VALID EMAIL if (isValidEmail(strForm.email) == false) error = true; //CHECK THEIR PREFERRED METHOD OF CONTACT if (strForm.rdoPref[0].checked) { //SELECTED EMAIL CONTACT if (isBlank(strForm.email,'lblEmail') == true) error = true; } else if (strForm.rdoPref[1].checked) { //SELECTED Phone CONTACT if (isBlank(strForm.phone,'lblPhone') == true) error = true; } else { //NO RADIO BUTTON SELECTED if(isBlank(strForm.email,'lblEmail')==false && isBlank(strForm.phone, 'lblPhone')==true) { //EMAIL IS THE ONLY FILLED-OUT FIELD. AUTO-SELECT EMAIL BUTTON strForm.rdoPref[0].checked = true; reset('lblPhone'); } else if(isBlank(strForm.phone,'lblPhone')==false && isBlank(strForm.email, 'lblEmail')==true) { //PHONE IS THE ONLY FILLED-OUT FIELD. AUTO-SELECT PHONE BUTTON strForm.rdoPref[1].checked = true; reset('lblEmail'); } else if (isBlank(strForm.phone,'lblPhone')==true && isBlank(strForm.email, 'lblEmail')==true) { error = true; } } //CHECK FOR BLANK COMPANY if (isBlank(strForm.company, 'lblCompany') == true) error = true; //CHECK FOR BLANK NAME if (isBlank(strForm.name,'lblName') == true) error = true; if (error == true) return false; } function isBlank(field,label) { if (field.value==null || field.value=="") { document.getElementById(label).style.color = "red"; field.focus(); return true; } else { document.getElementById(label).style.color = "#999"; return false; } } function reset(label) { document.getElementById(label).style.color = "#999"; } function isValidEmail(field) { var apos = field.value.indexOf("@"); var dotpos = field.value.lastIndexOf("."); //CHECK ONLY IF EMAIL FIELD IS NOT BLANK if (field.value.length > 1) { if (apos<1 || dotpos-apos<2) { document.getElementById('lblEmail').style.color = "red"; document.getElementById('emailError').style.visibility = "visible"; field.focus(); return false; } else { document.getElementById('lblEmail').style.color = "#999"; document.getElementById('emailError').style.visibility = "hidden"; return true; } } else { document.getElementById('lblEmail').style.color = "#999"; document.getElementById('emailError').style.visibility = "hidden"; return true; } } function isValidLength(field) { if (field.value.length > 5000) { document.getElementById('lblComments').style.color = "red"; document.getElementById('commentsError').style.visibility = "visible"; field.focus(); return false; } else { document.getElementById('lblComments').style.color = "#999"; document.getElementById('commentsError').style.visibility = "hidden"; return true; } }