2009-08-04 1 views
0

내 프로젝트는 파이어 폭스, 구글 chorme 및 IE 8.0IE 6.0 및 7.0 (window.location)에서 프로젝트를 실행하는 데 문제가 있습니까?

에서 완벽하게 실행하지만 IE 6.0에서 작동하지 않거나 7.0

내가 내 코드를 삽입하고 그것이에서는 window.location 에서 문제를 주어진 것을 깨달았 내가하고있는 일을 보여주기 위해 여기에. 내가 그것을 IE 6, 7 오히려 profile.html에 가서해야 xmlhttp.responseText 내 AJAX의 응답을 얻을 때

function GetEmailId() 
{ 
    var url="http://server.com/GetPostEmail.php"; 
    url=url+"&sid="+Math.random(); 
    xmlhttp.onreadystatechange=statechangedLogin2; 
    xmlhttp.open("GET", url, true); 
    xmlhttp.send(null); 
} 
function statechangedLogin2() 
{ 
    if(xmlhttp.readyState==4) 
    { 
     if(xmlhttp.responseText=="Login again") 
     { 
      window.location="http://server.com/profile.html"; 
     } 
    } 
} 

그래서이 코드는 IE 6, 7 를 제외한 다른 브라우저에서 잘 작동 그것은 내가 qotw.html이었던 원래 페이지에 머문다.

나는 window.location에 뭔가 문제가 있다고 생각하는데 아마도 여기에 다른 명령이 필요할 것입니다.

또한 내 GetXmlHttpObject는 다음과 같습니다.

function GetXmlHttpObject() { 
    //var xmlHttp = null; 
    try { 
    xmlHttp = new XMLHttpRequest(); 
    } catch (e) { 
    try { 
     xmlHttp = new ActiveXObject("Msxml2.XMLHTTP"); 
    } catch (e) { 
     xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); 
    } 
    } 
    return xmlHttp; 
} 

아무도 내 문제에 도움을 줄 수 있는지 확인하십시오.

감사 zeeshan

참고 : 다시 내 코드를 디코딩하기 위해 노력하고() 내 코드 IE 6, 7 결코 statechangedLogin2로 전환 없다는 것을 깨달았다. 이것이 내 코드가 작동하지 않는 이유입니다. 그런데 IE8 에서조차 다른 브라우저에서도 제대로 작동하는 이유는 무엇입니까?

+0

window.location이 작동해야합니다. IE6 또는 7의 코드를 디버깅하여 window.location이 문제가되는지 확인하십시오 (즉, window.location 행 위에 경고 상자 배치). 코드가 마지막 "if"문 안에 확실히 들어가 있습니까? – JamesEggers

답변

1

속성은 개체이며 URL은 해당 개체의 href 속성입니다. 대신 다음을 사용하십시오 :

window.location.href="http://server.com/profile.html"; 
관련 문제