我对 jQuery 1.7.1 和 firefox 中的 ajax 函数有疑问。我正在做一个从 CMIS 服务器请求 json 的 ajax 调用。在 chrome 中一切正常。让我给你举个例子:
function ajaxCall(url, requestType, isAsync, parameters, doneCb, failCb) {
$.ajax(url, {
type: requestType,
async: isAsync,
data: parameters
}).done(
alert("test"),
// the following function gets not executed in firefox with async: true
function (result) {
doneCb(result);
}).fail(function (cause) {
failCb(cause);
});
}
Firefox 中的奇怪之处在于,如果我使用 async: false ,一切都像魅力一样。如果我使用 async: true ,也会执行 done 回调,并弹出带有消息“test”的警报。但是警报后的功能没有被执行。我google了很多,找不到这个问题的解决方案。
你是我最后的希望;)
谢谢和最好的问候,西蒙
我也尝试了老式的方法,但结果仍然相同 - 如果 async 为真,则不会在 firefox 中调用成功函数。
$.ajax(url, {
type: requestType,
async: isAsync,
data: parameters,
success: function(result){
doneCb(result);
},
error: function(cause){
failCb(cause);
}
});