ajax 请求成功 跳入error的原因

作者:谢高升 发布:2016-10-13 浏览:2500次
ajax 请求成功 跳入error的原因;

$.ajax({
    type: "GET",
    url: _url,
    dataType: "json",
    async: true,
    success: function(data) {
        if (data) {
            if (data.status == "SEND"||data.status == "RESEND") {
                alert("短信发送成功!")
            } 
            if (data.status == "NOSEND") {
                alert("短信发送成功失败,请稍后重试!")
            } 
            if(data.status == "band"){
                console.log('band');
            }
        } else {
            alert("send sms error 1");
        }
    },
    error: function() {
        /*弹出jqXHR对象的信息*/
        alert(jqXHR.responseText);
        alert(jqXHR.status);
        alert(jqXHR.readyState);
        alert(jqXHR.statusText);            
        /*弹出其他两个参数的信息*/
        alert(textStatus);
        alert(errorThrown);
    }
})

网上大牛解释说的几个原因;dataType,状态码, 传递的参数都是确认是正确的;

让人很蛋疼;

最重要的一点是不要只看他的状态要看chrome的repository的里面是不是有一些报错信息;如果都正常继续

最后一路排查下来怀疑是这个ajax一个页面多个ajax请求是不是async=true的问题;

把它改成async = false;


 async默认是true(异步请求),如果想一个Ajax执行完后再执行另一个Ajax, 需要把async=false

立刻就成功了;特此写下来记录下来;

标签: ajax async