2013-06-26 5 views
0

IE에서 어떤 이유로 작동하지 않습니까? 왜 그런지 알아?이 JSON/AJAX 코드는 IE에서 어떻게 작동합니까?

$(document).ready(function() { 
    $.getJSON("http://jsonip.com/", function (e) { 
    $.ajax({ 
     url: "https://sub.domain.com/u/", 
     type: "POST", 
     data: { 
      i: e.ip 
     }, 
     success: function (e) { 
      window.location.replace("http://www.domain.com/") 
     } 
    }) 
    }) 
}) 
+2

세미콜론이 누락 되었습니까? –

+0

@idor_brad [nope] (http://es5.github.io/#x7.9) –

+1

"실행되지 않음"은 문제에 대한 자세한 설명입니다. 그 일을 한거야? 시간 전이나 후에 일어난 일 이었습니까? – PlantTheIdea

답변

0

CORs처럼 보이지만 IE에는 CORS 지원이 제한되어 있습니다. IE 9를 사용하는 경우 코드 위에 다음 코드를 추가하면 작동합니다.

jQuery.support.cors = true; 

IE 9 미만인 경우 아무 것도 작동하지 않습니다. 게시물이 요구 사항이 아닌 경우 JSONP을 사용해보세요.

+0

나도 그게 문제라고 생각해. www.domain.com과 sub.domain.com은 브라우저가 서로 다른 두 개의 도메인입니다. –

+0

@ClydeLobo하지만 sub.domain.com은 리다이렉트입니다. 도메인 간 문제는 아닙니다. 아니? –

+0

브라우저가 리다이렉트인지 모르는 것은 중요하지 않습니다. – anthonyterra

0

요청에 콘텐츠 유형을 추가하십시오. 나는 IE가 이것을 좋아할 것이라고 희망한다.

contentType: 'application/json' 

그래도 작동하지 않으면 동일한 도메인을 사용하려고하면 원본 도메인 간 요청 문제 일 수 있습니다.

+0

행운을 빕니다 :-(리디렉션이 불행하게도지나 가지 않습니다. –

관련 문제