Hi all,

Maybe I'm missing something simple here, but for some reason this form validates in both IE and Firefox, but it doesn't submit in IE. Little yellow exclamation icon appears on the status bar on form submit.

Any help would be great. Thanks!

Code:
/*
	Creation Date: Dec 8, 2009
	Description:
		
*/

function validate_school_form() {
	var valid = false;
	var error = "";
	if (element("fname").value.length < 1 ){
		error += "Please enter your first name.<br/>";
		element("fname").style.border = "1px solid red";
	} else {
		element("fname").style.border = "";
	}
	if ( element("lname").value.length < 1 ){
		error += "Please enter your last name.<br/>";
		element("lname").style.border = "1px solid red";
	} else {
		element("lname").style.border = "";
	}
	if ( !validate_email_address(element("email").value) ){
		error += "Please enter a valid email address.<br/>";
		element("email").style.border = "1px solid red";
	} else {
		element("email").style.border = "";
	}
	if ( element("addr").value.length < 1 ){
		error += "Please enter your street address.<br/>";
		element("addr").style.border = "1px solid red";
	} else {
		element("addr").style.border = "";
	}
	if ( element("zip").value.length != 5 || isNaN(element("zip").value) ){
		error += "A zip code must be 5 digits.<br/>";
		element("zip").style.border = "1px solid red";
	} else {
		element("zip").style.border = "";
	}	
	if ( element("city").value.length < 1 ){
		error += "Please enter your city.<br/>";
		element("city").style.border = "1px solid red";
	} else {
		element("city").style.border = "";
	}
	if ( element("state").value.length < 1 ){
		error += "Please enter your state.<br/>";
		element("state").style.border = "1px solid red";
	} else {
		element("state").style.border = "";
	}
	if (( element("phone1").value.length != 3 ) || ( element("phone2").value.length != 3 ) || ( element("phone3").value.length < 4 ) ){
		error += "Please enter a valid phone number.<br/>";
		element("phone1").style.border = "1px solid red";
		element("phone2").style.border = "1px solid red";
		element("phone3").style.border = "1px solid red";
	} else {
		element("phone1").style.border = "";
		element("phone2").style.border = "";
		element("phone3").style.border = "";
	}
	if ( element("gender").selectedIndex == 0 ){
		error += "Please enter your gender.<br/>";
		element("gender").style.border = "1px solid red";
	} else {
		element("gender").style.border = "";
	}	
	if ( element("birth_day").selectedIndex == 0 ){
		error += "Please enter a valid day of birth.<br/>";
		element("birth_day").style.border = "1px solid red";
	} else {
		element("birth_day").style.border = "";
	}	
	if ( element("birth_month").selectedIndex == 0 ){
		error += "Please enter a valid month of birth.<br/>";
		element("birth_month").style.border = "1px solid red";
	} else {
		element("birth_month").style.border = "";
	}	
	if ( element("birth_year").selectedIndex == 0 ){
		error += "Please enter a valid year of birth.<br/>";
		element("birth_year").style.border = "1px solid red";
	} else {
		element("birth_year").style.border = "";
	}
	if ( element("program_type").selectedIndex == 0 ){
		error += "Please enter your program of interest.<br/>";
		element("program_type").style.border = "1px solid red";
	} else {
		element("program_type").style.border = "";
	}	
	if ( element("level_of_education").selectedIndex == 0 ){
		error += "Please enter your level of education.<br/>";
		element("level_of_education").style.border = "1px solid red";
	} else {
		element("level_of_education").style.border = "";
	}	
	if ( error != "" ){
		alert('Error! Please fix the marked fields for missing or wrong information.');
		return false;
	} else {
		var d = new Date();
		var o = element("birth_year");
		var birth_year = o.options[o.selectedIndex].value;
		if (birth_year <= (d.getFullYear()-22)) {
			submit_school_form();
		} else {
			goToStep3();
		}
	}
}
function submit_school_form() {
	var o = "";
	var text = "http://xxxxxx.com/engine/directpost?";
	//var text = "../response2.php?";
	text += "CID=" + encodeURIComponent(element("CID"));	
	text += "first=" + encodeURIComponent(element("fname").value);
	text += "&last=" + encodeURIComponent(element("lname").value);
	text += "&mail_addr_1=" + encodeURIComponent(element("addr").value);
	text += "&mail_city=" + encodeURIComponent(element("city").value);
	text += "&mail_stateprov=" + encodeURIComponent(element("state").value);
	text += "&mail_postalcode=" + encodeURIComponent(element("zip").value);
	text += "&email=" + encodeURIComponent(element("email").value);
	var phone = element("phone1").value + element("phone2").value + element("phone3").value
	text += "&home_phone=" + encodeURIComponent(phone);
	o = element("birth_day");
	var birth_day = o.options[o.selectedIndex].value;
	text += "&bdate_day=" + encodeURIComponent(birth_day);
	o = element("birth_month");
	var birth_month = o.options[o.selectedIndex].value;
	text += "&bdate_month=" + encodeURIComponent(birth_month);
	o = element("birth_year");
	var birth_year = o.options[o.selectedIndex].value;
	text += "&bdate_year=" + encodeURIComponent(birth_year);
	o = element("gender");
	var gender = o.options[o.selectedIndex].value
	text += "&gender=" + encodeURIComponent(gender);
	o = element("program_type");
	var program_type = o.options[o.selectedIndex].value
	text += "&program_type=" + encodeURIComponent(program_type);
	o = element("level_of_education");
	var level_of_education = o.options[o.selectedIndex].value
	text += "&level_of_education=" + encodeURIComponent(level_of_education);
	text += "&user_ip=" + encodeURIComponent(element("user_ip").value);
	text += "&timestamp=" + encodeURIComponent(element("timestamp").value);
	text += "&domain=" + encodeURIComponent(element("domain").value);
	
	var complete = sendData(text);
//	if (complete) {
		goToStep3();
//	}
}
function goToStep3(){
	window.location = "redirect3.php";
}

function GetXmlHttpObject() {
	var xmlHttp=null;
	try {
		// Firefox, Opera 8.0+, Safari
		xmlHttp=new XMLHttpRequest();
	}
	catch (e) {
		// Internet Explorer 
		try {
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e) {
			try	{
				xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch (e) {
				alert("Your webbrowser does not support AJAX");
				return false;
			}
		}
	}
	return xmlHttp;
}
function sendData(text) {
	xmlHttp=GetXmlHttpObject();
	var url = 'http://xxxxxx.com/engine/directpost?'+text;
	xmlHttp.onreadystatechange = function() {
		if (xmlHttp.readyState == 4) {
			if (xmlHttp.status == 200) {
				return true;
			} else {
				return false;
			}
		}
	}
	xmlHttp.open('GET', url, true);
	xmlHttp.send(null);
}
THanks!