1

我使用 ajax 来调用远程网页,这适用于 ff、chrome 和 ie 正确,我使用开发站点进行测试并且它工作正常

远程页面上的头文件也允许跨域请求,

但是当我将此代码添加到实时站点时,它会给出。这给出了即其他浏览器工作正常

SCRIPT16389:xmlhttp=new XMLHttpRequest() 上的未指定错误;

我还更改了标题以允许来自实时站点的请求,但是没有人可以帮助我

var xmlhttp;
    if (window.XDomainRequest)
    {
        xmlhttp=new XDomainRequest();
        xmlhttp.onload = function(){ //alert(xmlhttp.responseText)
        };
    }
    else if (window.XMLHttpRequest)
        xmlhttp=new XMLHttpRequest();
    else
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    xmlhttp.onreadystatechange=function()
    {
        if (xmlhttp.readyState==4 && xmlhttp.status==200)
            alert(xmlhttp.responseText);
    }
    xmlhttp.open("GET",'http://oncorecables.com/stock/jumi/cross.php',true);
    xmlhttp.send();

现场直播 http://mychatterbook.com/profiles/members/

谢谢你

4

1 回答 1

2

您是否在 InPrivate 模式下使用 IE8?

当用户在 InPrivate 浏览模式下浏览时,IE8 中有一个错误会导致使用 XDomainRequests 对象的跨域 HTTP 请求失败(请参阅http://blogs.msdn.com/b/ieinternals/archive/2010/05/ 13/xdomainrequest-restrictions-limitations-and-workarounds.aspx)。

我自己通过使用 jQuery 的$.get()方法解决了这个问题。如果您没有在您的网站中使用 jQuery,您可能需要通过 jQuery 的源代码来调查他们是如何解决这个问题的,因为他们显然已经设法做到了这一点。

于 2012-10-10T12:53:42.457 回答