我只在IE9上遇到这个错误:
SCRIPT575:由于错误c00c023f,无法完成操作
错误发生在此行:if((a.responseXML)&;(a.readyState==4)){
我不明白为什么会发生这种情况,而且它在其他浏览器中似乎工作得很好
这是我的javascript代码:
var a=new-XMLHttpRequest();
a、 打开(“GET”,'/cust/ajax/getresult.php?qk=nnf87&;arg1='+pzid,true);
a、 onreadystatechange=函数(){
if((a.responseXML)&;(a.readyState==4)){
var N=a.responseXML.getElementsByTagName('result')
sequence=N[0].firstChild.data;
var SEQ=序列分割(“,”);
var num=序列长度;
var总和=0;
对于(var n=0;n<;num;n++){sum=sum+(SEQ[n]*1);}
//document.getElementById(“的编号”).innerHTML=sum;
变量日期=新日期();
date.setTime(date.getTime()+(2*60*60*1000));
document.cookie='cpa_num='+sum+';expires='+date.togmString()+';path=/';
}
}
我不认为您的请求被中止了?通过谷歌快速搜索找到了这篇博文。IE9中中止的请求似乎会在尝试读取XMLHttpRequest对象的任何属性时出现此错误
从文章中可以看出,他们在该错误代码方面的特殊问题可以通过以下方式复制:
- 创建XMLHttpRequest对象
- 分配onreadystatechanged事件处理程序
- 执行请求
- 在处理响应之前中止请求
现在您将看到readystatechange处理程序将被调用,
readystate属性设置为“4”。任何读取
XmlHttpRequest对象属性将失败
作者通过在执行手动中止时为请求分配中止状态,并在尝试读取任何其他属性之前检测并返回该状态,缓解了此问题。尽管此方法只有在您自己执行中止时才有效
类似的问题也记录在这篇WebSync Google Groups文章中。讨论快结束时,有一种暗示,这个问题只会发生
如果你有标准和IE9渲染
两种模式都设置
希望这能为你指明正确的方向