jquery ajax仅在IE中失败

时间:2012-06-26 02:51:42

标签: javascript jquery ajax internet-explorer

我最近重构了一些ajax代码以使其异步。它以前工作得很好,但我想使用jQuery promises,所以我jQuerified它。但是,现在,ajax调用适用于每个浏览器,但IE。

IE9抛出错误,其中ajax函数被赋予变量名称。 IE中的错误是:

“对象不支持第99行的此方法或属性。”

这是发生错误的块:

if (screen.width > 525 && svgSupported) {
    $loadingSvg = $.ajax({
        type: 'GET',
        url: 'images/mypicture.svg',
        dataType: 'xml',
        success: function(data){
            console.log("Ajax request successfully returned: " + data);
            console.log(data);
        },
    error: function(data){
        console.log("Ajax request failed: " + data);
        }
});
}

我已经尝试过类似情况下其他人在SO上提出的一些显而易见的事情,比如在jQ $(document).ready中包装所有内容。这不能解决它。 $loadingSvg变量在脚本的顶部全局声明,所以不是这样。任何想法,伙计们?

1 个答案:

答案 0 :(得分:1)

问题实际上是您的console.log行:

console.log("Ajax request successfully returned: " + data);

更具体地说,IE似乎无法将XML文档与字符串连接,或者实际上XML与字符串连接。他们不支持.toString()。只需删除该部分即可继续:)

相关问题