jQuery状态200 ok错误

时间:2012-03-12 20:36:21

标签: javascript jquery ajax get

我对jQuery ajax请求有一个非常特殊的问题。

当用户浏览网页的各个部分时,有jquery get()调用来获取一些内容。 问题是那些请求在随机场合停止工作。 当我在firebug中检查请求响应时,请求状态为200 OK,但是firebug请求的颜色为红色,就像出现错误一样,但没有错误消息。

firebug中的响应选项卡为空。

问题是我通常会访问这些网址,而不是ajax,内容会正常返回。

所以,如果我重新启动浏览器,那就再好了, 我正在使用jquery 1.7.1和jquery.effects.core.js

这是我提出请求的地方:

$.get('abc', function(data) {
...
}).error(function(xhr, status, error) { alert("An AJAX error occured: " + status +     "\nError: " + error);});

当问题发生时调用警报并且'status'变量的值为'error'且'error'变量为空字符串...

我真的不知道会出现什么问题。一些帮助将不胜感激

1 个答案:

答案 0 :(得分:3)

请记住始终捕获错误并报告错误,以便您可以在不猜测问题的情况下找到问题:

$.ajax({
    url : '<url>',
    success : function (serverResponse) { ... },
    error   : function (jqXHR, textStatus, errorThrown) {
        if (typeof console == 'object' && typeof console.log == 'function') {
            console.log(jqXHR);
            console.log(textStatus);
            console.log(errorThrown);
        }
    }
});

这会检查以确保console.log存在并且在尝试使用它之前是一个函数。如果存在console.log,那么这将记录与AJAX请求相关的所有错误信息。

文档:http://api.jquery.com/jquery.ajax