在IE7中发送XMLHttpRequest时出现Javascript错误

时间:2010-10-26 12:37:14

标签: javascript ajax xmlhttprequest

我有点奇怪的问题。对于我的一个客户,我在他们的网站上添加了一些ajax功能。获得背景;它是一个关于travelagency和pricetables的网站,由ajax调用生成,以减少服务器负载并改善用户体验。

直到现在我才收到一封电子邮件,说他们在IE7中无法使用。所以,为了测试这一点,我首先安装了IETester,但是每次我只打开一个网站时这几乎崩溃了。所以我下载了一个版权转换VMWare工作站并安装了一个带有IE7的虚拟XP机器(因为IE8在我的主要Win7安装上)。模拟错误真是太麻烦了吗?! ;)

反正。经过一些调试后,我认为这是xmlHttpRequest状态属性,当我在相应的javascript函数中尝试alert这个状态时,IE在左下角显示一个惊叹号,在IE8中有一些模糊的“未进一步定义的错误”消息,FireFox和Chrome这根本不是问题。

所以我想我可能一直在使用错误的XMLHttpRequest对象。但话说回来的话,第一次打电话也是为了开始最接近月份的第一个价格。为了确保我搜索哪个对象应该适用于IE7,现在我使用Msxml2.XMLHTTP并且初始加载顺利。

当我点击<a onclick="callToFunction(with, correct, params)">click</a>时,它会进入更新<div>的函数,但之后会冻结。我发现xmlHttp.readyState4但我无法输出xmlHttp.status,然后在左下角再次显示“未进一步定义的错误”消息。

我的问题是经过一个漫长的夜晚试图解决这个问题后,你们有什么线索可能会有什么问题吗?


示例:

http://www.bergenmeer.nl/50/oostenrijk/tirol/gerlos/residence-zillertal.html

点击标签'Prijzen en aanbiedingen'(价格和特别优惠),然后点击下面栏中的另一个月,例如jan,feb,maa。

请注意,此功能仅出现在IE7中。

1 个答案:

答案 0 :(得分:1)

在IE7中,您可以尝试使用native window.XMLHttpRequest 对于它的价值,我曾经遇到过一个问题,该问题通过删除xmlhttp.setRequestHeader("Connection", "close");(我在代码中没有看到......)来解决。