IE上的新XMLHttpRequest()上的JS Ajax未指定错误

时间:2012-09-06 10:15:30

标签: javascript ajax xmlhttprequest

我使用ajax进行呼叫远程网页,这适用于ff,chrome和ie,  我使用开发网站测试并且它可以正常工作

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

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

SCRIPT16389:xmlhttp上的未指定错误=新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/

谢谢

1 个答案:

答案 0 :(得分:2)

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

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

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