当前位置: 代码迷 >> Ajax >> jquery ajax请求老是error的原因
  详细解决方案

jquery ajax请求老是error的原因

热度:966   发布时间:2012-08-24 10:00:21.0
jquery ajax请求总是error的原因
今天写一个jQuery.ajax方法的时候,无论怎么搞都只会调用error对应的函数。
后来发现,是因为在这一段jQuery后面我加了一行重新reload页面:

var the_id = xxx
jQuery.ajax() {
    url : "del_setting",
    data : { id : the_id },
    dataType : "text",
    success : function() {
        alert("success");
    },
    error : function() {
        alert("error");
    }
}
window.location.reload();

因为AJAX是异步加载的,所以之后的页面重载会导致AJAX请求发送失败(Firefox,对于google chrome,请求会发送出去,但仍然执行的是error的function)。
把window.location.reload();写到success或error的回调函数中即可。或者把请求设置为同步的,方法为在jQuery.ajax()方法中,指定参数async : false。
  相关解决方案