1

JS:

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

    });
}

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

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

4

1 回答 1

2

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

jQuery.support.cors = true

这里有用的是这个成语:

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

它会让您了解 getJSON 失败时的错误。在这种情况下,它可能会说没有运输。

于 2013-11-07T15:11:12.207 回答