XMLHttpRequest() não funciona no Internet Explorer

2 respostas
ssh

Pessoal, boa tarde.
Estou precisando pegar o ip do usuário e achei uma função javascript que funciona perfeitamente em outros navegadores.
O problema é que no IE não funciona de jeito nenhum.
Alguém tem uma solução p/ esse problema?
OBS: a aplicação é um site comum, só em html mesmo.

function myIP() 
{       
    if (window.XMLHttpRequest)
		xmlhttp = new XMLHttpRequest();       
    else 
		xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");       
       
    xmlhttp.open("GET","http://api.hostip.info/get_html.php",false);       
    xmlhttp.send();       
       
    hostipInfo = xmlhttp.responseText.split("\n");       
       
    for (i=0; hostipInfo.length >= i; i++) 
	{       
        ipAddress = hostipInfo[i].split(":");       
        if ( ipAddress[0] == "IP" ) 
			return ipAddress[1];       
    }              
    return false;       
}

OBS2: também tentei utilizar essa outra função abaixo, mas quando eu do o alert(data); ele retorna “undefinied”.

function myIP1()       
{         
    var ipAddress;  
      
    data = $.ajax({  
      url: "http://api.hostip.info/get_html.php",  
      async: false  
    }).responseText;       
    alert(data);   
    hostipInfo = data.split("\n");      
    //alert(hostipInfo);             
    ipAddress = hostipInfo[2].split(":");    
            
    return ipAddress[1];  
}

2 Respostas

jaboot

Tá dando algum erro javascript? Algum erro na aplicação?

E outra, o ip você pode pegar facilmente pelo Request Http do usuário.

ssh

jaboot:
Tá dando algum erro javascript? Algum erro na aplicação?

E outra, o ip você pode pegar facilmente pelo Request Http do usuário.

Então amigo, como disse anteriormente, erro javascript não está acontecendo, pois funciona no Chrome e no Firefox normalmente.
E a aplicação não utiliza java e nem php.

Você pode me orientar em como pegar o ip utilizando esse tal de Request Http do usuário que você disse?

o problema está no filho duma **** do Internet Explorer.

Criado 31 de janeiro de 2012
Ultima resposta 31 de jan. de 2012
Respostas 2
Participantes 2