jquery设置超时错误

时间:2010-02-14 21:02:34

标签: jquery ajax firefox timeout

我有一个简单的jQuery AJAX功能:

$.ajax({ 
 type: "GET",
 url: "json/" + address,
 dataType: "json",
 timeout: 1000,  
 data: "username=" + username + "&paging_limit=" + paging_limit,
 success: function(json){alert("somthing")},
 error: function(){alert("somthing else")}
});

当请求超时时,我在Firefox(3.6)中收到以下错误,

setting a property that has only a getter
[Break on this error] null}};try{var h=x.abort;x.abort=funct...return!a.status&&location.protocol===

唯一的解决方法是不设置自定义“超时”设置。

之前有没有人遇到这个问题,如果我担心,是否有解决方案?

提前致谢。

1 个答案:

答案 0 :(得分:2)

这是因为JQuery试图在其错误处理代码中设置 XHR对象的readyStatexhr.readyState = 0;。本质上,它试图用自己的XHR替换中止逻辑。它看起来不像Firefox 3.6中允许的那样。我将检查JQuery源代码库以查看这是否是一个已知错误。

更新:它是:Bug report

此错误已在JQuery 1.4.1中修复。