小编典典

IE 9 Javascript错误c00c023f

ajax

我仅在IE9上遇到此错误:

SCRIPT575:由于错误c00c023f,无法完成操作。

错误发生在这一行: if ((a.responseXML) && (a.readyState==4)) {

我无法弄清楚为什么会发生这种情况,并且在其他浏览器中似乎效果很好。

这是我的JavaScript代码:

var a = new XMLHttpRequest();
a.open("GET",'/cust/ajax/getresult.php?qk=nnf87&arg1='+pzid,true);
a.onreadystatechange = function () {
    if ((a.responseXML) && (a.readyState==4)) {
        var N = a.responseXML.getElementsByTagName('result')
        sequence = N[0].firstChild.data;
        var SEQ = sequence.split(",");
        var num = SEQ.length;
                    var sum = 0;
                    for(var n=0;n<num;n++){sum = sum + (SEQ[n]*1);}
        //document.getElementById("the_number_of").innerHTML = sum;
        var date = new Date();
        date.setTime(date.getTime()+(2*60*60*1000));
        document.cookie='cpa_num='+sum+'; expires= '+date.toGMTString()+'; path=/';
    }

}

阅读 345

收藏
2020-07-26

共1个答案

小编典典

我不认为您的请求被中止了吗?快速谷歌搜索找到了博客文章。尝试从XMLHttpRequest对象读取任何属性时,似乎IE9中的中止请求将给出此错误。

从帖子中,他们的与此错误代码有关的特殊问题可以通过以下方式重复:

  • 创建一个XMLHttpRequest对象
  • 分配一个onreadystatechanged事件处理程序
  • 执行请求
  • 在处理响应之前中止请求

现在您将看到将调用readystatechange处理程序,并将readystate属性设置为“
4”。任何读取XmlHttpRequest对象属性的尝试都将失败。

作者通过在执行手动中止时为请求分配中止状态,并在尝试读取任何其他属性之前对其进行检测并返回来缓解此问题。虽然这种方法只有在您自己执行中止操作时才能真正起作用。

WebSync
Google网上论坛帖子
记录了类似的问题。在讨论快要结束时,有一个隐含的意思是这个问题只会发生

如果您同时设置了标准和IE9渲染模式

希望能为您指明正确的方向。

2020-07-26