Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Hospeda SUL

Usando ajax para carregar diferentes formularios.

Recommended Posts

Boa Tarde Galera...

 

Novamente estou aki para tirar duvidas com vocês hehehehe.

Bom eu sou totalmente leigo em ajax.. Baixei um tutorial estou estudando mas por enquanto nao sai nada. Em um outro tópico me ensinaram como usar o ajax e até me postaram um codigo que uso em algumas aplicação.

 

Vou explicar o que eu desejo. Possuo 3 links:

[*]Parcelamento em 1x

[*]Parcelamento em 2x

[*]Parcelamento em 3x

Estes links estao dentro de um formulário. Minha ideia é ao clicar no link Parcelamente em 1x ele carregue o formulario parcelamento1.htm, ao clicar no parcelamento em 2x ele carregue o formulário2.htm e no tres o tres.htm. Até ai tudo bem eu consegui fazer utilizando o script abaixo.

 

<script language="JavaScript" type="text/JavaScript">function Ajax(url,campo) {elem = campo;document.getElementById('carregando').style.visibility = "visible";if (window.XMLHttpRequest) { req = new XMLHttpRequest(); } else if (window.ActiveXObject) { req = new ActiveXObject("Microsoft.XMLHTTP"); } else { alert("Seu navegador não suporta XMLHttpRequest."); return; }req.open("GET", url, true);req.onreadystatechange = processReqChange;req.send(null); }function processReqChange() {if (req.readyState == 4) {if (req.status == 200) {document.getElementById('carregando').style.visibility = "hidden";var texto = unescape(req.responseText.replace(/\+/g , " "));document.getElementById(elem).innerHTML = texto;}}}</script><style type="text/css">.carregando {font-family: Arial, Helvetica, sans-serif;font-size: 12px;text-transform: none;color: #FF0000;text-align: center;border: 1px dashed #999999;position: relative;visibility: hidden;left: 15%;height: 100px;width: 400px;}</style></head><body><a onClick="javascript:Ajax('link1.htm','conteudo')" href="#">Pagamento em 1x</a><br> <a onClick="javascript:Ajax('link2.htm','conteudo')" href="#">Pagamento em 2x</a><div class="conteudo" id="conteudo"><div class="carregando" id="carregando" align="center"><table width="400" height="100" border="0" cellpadding="0" cellspacing="0"><tr><td>Por favor Aguarde enquanto suas informações são carregadas</td></tr></table></div></div></body></html>

Porem imagine que o usuário tenha clicado no link errado. Digamos que era para ele ter clicar em parcelamento em 1x e clicou em parcelamento em 2x. A iniciativa dele vai ser: "OPA ERREI, CLIQUEI NO DOIS E ERA PARA CLICAR NO UM AGORA VOU CLICAR NO UM". Teoricamente ele clicando no um formulario2 deveria ter sido trocado pelo 1 ao clicar no link 1 so que não ocorre. Alguem tem alguma dica sobre isso???

 

Obrigado desde já!

Compartilhar este post


Link para o post
Compartilhar em outros sites

RESOLVIDO!!!

 

E ai galera, consegui o que eu estava procurando. Vou postar aki pois pode servir para vocês tambem!!!

 

<script>meuAjax = function (){   	try{   		xmlhttp = new XMLHttpRequest();   	}catch(ee){   		try{   			xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");   		}catch(e){   			try{   				xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");   			}catch(E){   				xmlhttp = false;   			}   		}   	}   }  ajaxGet = function( nomeUrl, divRetorno ){     	divInsereResposta = document.getElementById( divRetorno );   	   	meuAjax();   	xmlhttp.abort();   	xmlhttp.open("GET", nomeUrl ,true);   	   	xmlhttp.setRequestHeader("Content-Type", "text/html; charset=iso-8859-1");   	xmlhttp.onreadystatechange = function() {   			if( xmlhttp.readyState == 4 ){   				   				var valorRetorno			= xmlhttp.responseText;   				divInsereResposta.innerHTML = valorRetorno;   					   			}   	}   	   	xmlhttp.send( null );     }  </script><a href="javascript:ajaxGet( 'link1.htm', 'meuDivRetorno' );">carregar ajax</a><br>  <a href="javascript:ajaxGet( 'link2.htm', 'meuDivRetorno' );">carregar ajax</a>	<div id="meuDivRetorno"></div>
Era isso!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola Hospeda SUL,Muito bom o seu post funciona mesmo, o problema é que ao chamar o formse tiver carecteres com acentuação não reconehece fica assim: Transfer�iacoloquei o header e não funfou...<?phpheader("Content-type: text/html; charset=ISO-8859-1", true);?>você sabe como resolver isso?ou alguem ai sabe?fico grato quem puder ajudar saudações a todos!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.