Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde.
Tenho uma página de cadastro, e estou com problema pra aparecer as informações com ajax.
É na Locaweb, então a partir do cep eu já tenho como informações a cidade, o estado e o bairro, e preciso trazer essas informações dinamicamente para minha página.
Tentei assim:
<input type="text" size="10" maxlength="8" name="CEPDestino" onBlur="showEnderecoRua(this.value);" value="<%=CEPDestino%>">
E a informação de retorno viria em divs:
Endereço: <div id="txtEnde"></div>
Bairro: <div id="txtBairro"></div>
Cidade: <div id="txtCidade"></div>
Estado: <div id="txtEstado"></div>
A função showEndereco(this.value) é a seguinte:
function showEnderecoRua(str)
{
xmlHttp=GetXmlHttpObjectEnd()
if (xmlHttp==null)
{
alert ("Browser does not support HTTP Request")
return
}
var url="cepRua.asp"
url=url+"?q="+str
url=url+"&sid="+Math.random()
xmlHttp.onreadystatechange=stateChanged1
xmlHttp.open("GET",url,true)
xmlHttp.send(null)
}
function GetXmlHttpObjectEnd()
{
var objXMLHttp=null
if (window.XMLHttpRequest)
{
objXMLHttp=new XMLHttpRequest()
}
else if (window.ActiveXObject)
{
objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP")
}
return objXMLHttp
}
function stateChanged1()
{
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
{
document.getElementById("txtEnde").innerHTML=xmlHttp.responseText
}
}
E a página CepRua.asp é a seguinte:
<%call PegaEndereco(RequestValue("q"))
Endereco = session("Endereco")
response.write Endereco%>
O Endereço eu consigo colocar numa boa na div txtEnde.
Meu problema é quando tento colocar o bairro, a cidade e o estado, não consigo fazer funcionar.
Tentei fazer, a partir do onblur, mais 3 funções, uma que mostrasse a cidade, outra o bairro e outra a cidade, em suas respectivas divs e com funções diferentes, com páginas asp diferentes e usando o mesmo método, response.write(), mas não consegui fazer isso funcionar.
Sempre mostrava o valor na última div, e era sempre a informação que deveria constar na primeira div, o endereço.
Deve ser algum erro bem idiota esse, mas não estou conseguindo contornar.
Se alguém pudesse me ajudar, agradeço.
Gustavo
Carregando comentários...