jQuery '行 4954 错误: 不支持该属性或方法' 的问题

这个问题只在IE下出现。诡异的是,对于出现这个问题的页面,重新刷新一下就又好了,Ajax 工作一切正常。顺便说一下,我的 jQuery 版本是 1.4.2。

解决方案(来自这里):

jQuery-1.4.2.js 中找到 4954 行,
return new window.XMLHttpRequest();
修改为

复制代码 代码如下:


if(!$.browser.msie) {
return new window.XMLHttpRequest();
} else {
return new window.ActiveXObject("Microsoft.XMLHTTP");
}


Over.

原因大概是 IE7/8 对 XMLHttpRequest 的支持有一点儿问题,如果服务器端没有正确地发送 charset HTTP Header 就不能正常使用,但是页面加载完成之后可以通过解析 HTML Header 的方式判断 charset,因此第二次加载网页就正常了。
那么就让它们使用 ActiveXObject 吧。

参考英文原文说明:?/topic/9739-auto-complete-ajax-problems-in-ie-with-jquery-142/

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wdffds.html