//--------------AJAX-----------------------

/******************************************* 
INICIA O AJAX 
********************************************/ 
function openAjax() 
{ 
	var objAjax; 
	try {objAjax = new XMLHttpRequest();} // Para Firefox, Safari, dentre outros. 
	catch(ee) 
	{ 
		try {objAjax = new ActiveXObject("Msxml2.XMLHTTP");} // Para o IE da MS 
		catch(e) 
		{ 
			try {objAjax = new ActiveXObject("Microsoft.XMLHTTP");} // Para o IE da MS 
			catch(E) 
				{objAjax = false;} 
		} 
	} 
	return objAjax; 
}  
 
//-----------------------------------------
// envia dados para o servidor via ajax
function fEnviaFormAjax(strFormName, divRetorno, strfRetorno) 
{ 
	// inicia o Ajax. 
	var objAjax = openAjax(); 
	var objForm =  eval('document.' + strFormName);
	
	var query = ''; 

	// monta a string de dados a ser enviada p/script no servidor 
	for (var j=0, elm; (elm = eval('objForm.elements['+j+']')); j++) { 
		var name = elm.getAttribute('name'); 
		if (name) { 
			if (query) query += '&'; 
			query += name + '=' + escape(elm.value); 
		} 
	} 
	
	var url = objForm.action;
	
// envia os dados conforme método declarado no formulário 
//----POST
	var strform = objForm.method.toUpperCase()
//alert(url + '&' + query)
	if (strform == 'POST') { 
		//eval(objForm.submit())
		objAjax.open("POST", url, true); 
		objAjax.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 
		objAjax.send(query); 
	} 
//----GET 
	else { 
		
		objAjax.open('GET', url + '?' + query, true); 
		objAjax.send(null); 
	}
	
	objAjax.onreadystatechange = function() {
	
		// Quando estiver carregando, exibe: carregando... 
		if (objAjax.readyState == 1) {
			divRetorno.innerHTML = "Enviando..."; 
		}
		if(objAjax.readyState == 4) { 
			if(divRetorno){
				//alert(' divRetorno true => ' + objAjax.responseText);
				divRetorno.innerHTML = objAjax.responseText; 
			}
			if(strfRetorno!=''){
				eval(strfRetorno);
			}
		} 
	}
} 
