jQuery getJSON和调用文件在IE9中不起作用

时间:2013-11-07 13:35:46

标签: javascript jquery

JS:

var loadNeededDocumentsData = function () {
    $j.getJSON("customermanagement/documentsCheckJSON.do", function (data) {

    });
}

$j(document).ready(function () {
    loadNeededDocumentsData();
});

在FF中,Chrome代码运行正常。问题出在IE8或iE9中,customermanagement/documentsCheckJSON.do从未执行过。为什么?在其他浏览器中有效但在IE中没有的代码有什么问题?

1 个答案:

答案 0 :(得分:2)

IE8不支持XMLHttpRequest对象中的CORS,这就是jQuery。 IE8默认使用XDomainRequest object jQuery doesn't support。所以,在你的代码中试试这个:

jQuery.support.cors = true

这里有用的是这个成语:

jQuery.getJSON(URL, 
  function(data) {
    alert(data);
  }
)
.error(function(jqXHR, textStatus, errorThrown) { alert(errorThrown); })
;

它会让你知道getJSON失败时的错误。在这种情况下,它可能会说一些关于没有运输的事情。