try{
	xmlhttp = new XMLHttpRequest();
}catch(ee){
	try{
		xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	}catch(e){
		try{
		xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		}catch(E){
			xmlhttp = false;
		}
	}
}

function ajax_form2(div, pagina, post){

	//Exibe o texto carregando no div conteúdo
	var conteudo=document.getElementById(div)
	conteudo.innerHTML='<span>Enviando os dados. Aguarde...</span>'

	//Guarda a página escolhida na variável atual
	atual=pagina

	//Abre a url
	xmlhttp.open("POST",pagina,true);
	xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");

	//Executada quando o navegador obtiver o código
	xmlhttp.onreadystatechange=function() {

		if (xmlhttp.readyState==4){

			//Lê o texto
			var texto=xmlhttp.responseText

			//Desfaz o urlencode
			texto=texto.replace(/\+/g," ")
			texto=unescape(texto)

			//Exibe o texto no div conteúdo
			var conteudo=document.getElementById(div)
			conteudo.innerHTML=texto

			//Obtém os links do menu
			/*var menu=document.getElementById("menu")
			var links=menu.getElementsByTagName("a")

			//Limpa as classes do menu
			for(var i=0;i<links.length;i++)
			links[i].className=""

			//Marca o selecionado
			links[atual-1].className="selected"*/
		}
	}
	xmlhttp.send(post);
}


// ----------------------------
/* essa função varre o form, e pega os valores de todos os campos do formulário.
use a função dentro da tag <form> do seu código

exemplo: <form id="nome_formulario" name="nome_formulario" action="" method="post" onsubmit="ajax_form('conteudo', 'nome_formulario', 'envia.php');">
*/

function ajax_form(id, id_form, url, acao) {

	var elementosFormulario = document.getElementById(id_form).elements;
	var qtdElementos = elementosFormulario.length;
	var queryString = "";
	var elemento;
	var ajax="ajax";

	//Cria uma funcao interna para concatenar os elementos do form
	this.ConcatenaElemento = function(nome,valor) {
		if (queryString.length>0) {
			queryString += "&";
		}
		queryString += encodeURIComponent(nome) + "=" + encodeURIComponent(valor);
	};

	this.ConcatenaElemento(acao,true);
	this.ConcatenaElemento(ajax,true);

	//Loop para percorrer todos os elementos
	for (var i=0; i<qtdElementos; i++) {
		//Pega o elemento
		elemento = elementosFormulario[i];
		if (!elemento.disabled) {
		//Trabalha com o elemento caso ele nao esteja desabilitado
			switch(elemento.type) {
				//Realiza a acao dependendo do tipo de elemento
				case 'text': case 'password': case 'hidden': case 'textarea':
				this.ConcatenaElemento(elemento.name,elemento.value);
				break;
				case 'select-one':
				if (elemento.selectedIndex>=0) {
					this.ConcatenaElemento(elemento.name,elemento.options[elemento.selectedIndex].value);
				}
				break;
				case 'select-multiple':
				for (var j=0; j<elemento.options.length; j++) {
				if (elemento.options[j].selected) {
					this.ConcatenaElemento(elemento.name,elemento.options[j].value);
				}
				}
				break;
				case 'checkbox': case 'radio':
				if (elemento.checked) {
					this.ConcatenaElemento(elemento.name,elemento.value);
				}
				break;
			}
		}
	}
	ajax_form2(id, url, queryString);
}