2013-06-26 42 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

不幸:-(重定向不通过不幸。 –

相关问题