jquery / ajax在ie9中不起作用

时间:2013-08-27 14:51:41

标签: jquery ajax internet-explorer-8 internet-explorer-9

我为ie8(内部,公司)编写了一个环境。

最近,我们开始了ie9部署测试(我知道,它远远落后于......)

我工作的应用程序不起作用。

我将xua ie = edge更改为ie = 8并且ie9正常工作,但由于显而易见的原因,我不想将ie 9限制为ie8s渲染引擎。

不起作用的区域是菜单上的ajax人口调用。即打印

 <ul id = "ul_a1">   <li>loading...</li>  </ul>

来自源头,和 那么

var request = $.ajax({  
    url: "xxurlxxx"
    ,  type: "GET"              
    ,  cache: false
    ,  dataType: "html"
});
request.done(function(msg) {
    $("#ul_a1").html(msg);  
});

使用选项列表填充(此调用返回一堆li)。

该区域保持'loading ...'而且request.fail也不会触发。

ie9不喜欢这种方法怎么样? URL是本地的,而不是xdomain。

2 个答案:

答案 0 :(得分:1)

$.ajax({  
    url: "xxurlxxx",
    type: "GET",          
    cache: false,
    data: {
       someparam: "somevalue"
    },
    dataType: "html",
    success: function (data) {
        // do something with data
    }
});

如果您只是添加了一些生成的HTML服务器,那么您可以尝试:

$('#element').load(url);

如果这没有用,那么您可能需要对网址进行编码。

答案 1 :(得分:0)

这看起来根本不是问题。相反,先前加载的html5 canvas元素正在抛出一个dom异常错误,该异常错误导致它在断开后出现异常。

ie8不使用canvas,它使用div。 ie9必须尝试渲染它(我正在使用一个包含flot graphing lib的excanvas)。