Silvio luis Posted November 10, 2011 Report Share Posted November 10, 2011 ola, tenho um código que funciona no ie e não funciona nos demais navegadoreso erro é, ao selecionar um valor numa combo, ele abre a nova combo, e a combo que ele foi selecionado o valor, ficar carregando, ao invez de ficar visivel. vejam no link abaixo, tanto no ie como firefox..http://testesites.web200.uni5.net/request/teste.aspattsilvio Quote Link to comment Share on other sites More sharing options...
0 fiote Posted November 11, 2011 Report Share Posted November 11, 2011 Dentro de todas as funções que você faz um request, adicione xmlhttp.onreadystatechange = null; logo antes do xmlhttp.open.Parece que o IE e o Chrome triggam o "state change" em horas diferentes, e no Chrome ele está acontecendo ANTES de você definir qual a nova função a ser executada. Com isso ele executa uma função anterior e acaba bagunçando as coisas. Ou sei lá o que está acontencendo lol, só sei que da forma que eu falei funciona =) Quote Link to comment Share on other sites More sharing options...
0 Silvio luis Posted November 11, 2011 Author Report Share Posted November 11, 2011 desculpe eu não consegui entender o q você disseatt Silvio Quote Link to comment Share on other sites More sharing options...
0 fiote Posted November 11, 2011 Report Share Posted November 11, 2011 Dentro de todas as funções que você faz um request, adicione xmlhttp.onreadystatechange = null; logo antes do xmlhttp.open.Essa parte é a única que você precisa entender, lol. Você endenteu? Quote Link to comment Share on other sites More sharing options...
0 Bundt Posted November 16, 2011 Report Share Posted November 16, 2011 Dentro de todas as funções que você faz um request, adicione xmlhttp.onreadystatechange = null; logo antes do xmlhttp.open.Essa parte é a única que você precisa entender, lol. Você endenteu?Ola, estou com o mesmo problema só que ao invés de usar xmlhttp.onreadystatechange = null; estava usando xmlHttp.onreadystatechange=stateChangedC; function stateChangedC(){ if(xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){ document.getElementById("exibeCidade").innerHTML=xmlHttp.responseText } } trocando ele trava. É um script para buscar o nome das cidades referente ao estado que for selecionado. Consegui fazer com que ele funcione em todos os navegadores, mas esta faltando algo pois somente no IE ele pega o valor da cidade selecionado nos outros navegadores ele não pega o valor da cidade. Se puderemos me ajudar, não consigo. Desde já, abradeço. try{ xmlhttp = new XMLHttpRequest(); } catch(ee){ try{ xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch(e){ try{ xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch(E){ xmlhttp = false; } } } if (navigator.userAgent.indexOf("Firefox") != -1) { xmlHttp=GetXmlHttpObject(); } if (navigator.userAgent.indexOf("MSIE") != -1) { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); } if (navigator.userAgent.indexOf("Chrome") != -1) { xmlHttp=GetXmlHttpObject(); } if (xmlHttp==null){ alert ("Este browser não suporta HTTP Request") return } document.getElementById("exibeCidade").innerHTML='Carregando as cidades...' var url="php/selecionaCidade.php" url=url+"?uf="+str url=url+"&sid="+Math.random() xmlHttp.onreadystatechange=stateChangedC xmlHttp.open("GET",url) xmlHttp.send(null) } function stateChangedC(){ if(xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){ document.getElementById("exibeCidade").innerHTML=xmlHttp.responseText } } Quote Link to comment Share on other sites More sharing options...
Question
Silvio luis
ola, tenho um código que funciona no ie e não funciona nos demais navegadores
o erro é, ao selecionar um valor numa combo, ele abre a nova combo, e a combo que ele foi selecionado o valor, ficar carregando, ao invez de ficar visivel.
vejam no link abaixo, tanto no ie como firefox..
http://testesites.web200.uni5.net/request/teste.asp
att
silvio
Link to comment
Share on other sites
4 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.