Javascript AJAX请求在IE8和IE9中不起作用

Javascript AJAX请求在IE8和IE9中不起作用,javascript,jquery,ajax,cross-browser,cross-domain,Javascript,Jquery,Ajax,Cross Browser,Cross Domain,此AJAX代码在IE10+和Chrome以及其他浏览器中工作,但在IE8和IE9中不工作 <table id="table" border="1"> <tbody style="display: table-row-group"></tbody> </table> jQuery(document).ready(function(){ $.support.cors = true; var url = "https://q

此AJAX代码在IE10+和Chrome以及其他浏览器中工作,但在IE8和IE9中不工作

<table id="table" border="1"> 
    <tbody style="display: table-row-group"></tbody>
</table>

jQuery(document).ready(function(){
    $.support.cors = true;

    var url = "https://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.xchange%20where%20pair%20in%20(%22EURUSD%22%2C%20%22CADUSD%22%2C%20%22GBPUSD%22%2C%20%22AEDUSD%22%2C%20%22TRYUSD%22%2C%20%22RUBUSD%22%2C%20%22INRUSD%22%2C%20%22SARUSD%22)&format=json&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&callback=";

    var $tbody = $('#table').find('tbody');
    var $thead = $('#table').find('thead');

    $.ajaxSetup({ cache: false });

    $.ajax({
        crossDomain: true,
        type: "GET",
        url: url,
        cache: false
    }).done(function (data) {
        alert("lev 2 ");
        var ObjectKeys = Object.keys(data.query.results.rate[0]);
        var row = "<tr>";
        row += "</tr>";
        $thead.append(row);

        $.each(data.query.results.rate, function (i, el) {
            console.log("lev 3 = " + i);
            $tbody.append($('<tr />').append($('<td />').text(el.id)).append($('<td />').text(el.Name)).append($('<td />').text(el.Rate)).append($('<td />').text(el.Ask)).append($('<td />').text(el.Bid)));
        });
    });        
});
我怎样才能解决这个问题


问题是IE8不支持XHR,因此不能使用本机XHR或jQuery的$.ajax进行跨域ajax调用

对于IE8,微软决定开发他们自己的跨域XHR,而不是使用CORS XHR,它被称为,所以你必须实现它来支持IE8用户。可以在中找到用法示例


或者,您可以通过本地服务器端代理跨域请求,使外部请求成为服务器对服务器的情况,这不受

的限制。请查看此帖子。当您说不工作时,您的意思是什么?控制台中的错误消息?请求超时?什么都没发生?请求返回错误?