jquery - response.statusText ="OK"但陷入 ajax 与 jQuery 的错误回调

标签 jquery ajax

服务器端:

 ....
    $_SESSION['accountId'] = $accountId;
    $_SESSION['type'] = $_POST['accountType'];
    echo '1';
    return;

客户端:

$.ajax(
{
    type:'POST',
    data: $("#flowFormSubmit").serialize(),
    dataType:'text/plain',
    timeout:1000,
    success:function(response){
        if(-1 == response)
            alert('fail');
        else
            alert('succeed');
    }
});

我已经测试过它会在“返回”处停止; 什么情况下success函数不会被调用?

编辑:

添加错误回调后,捕获到了,但还没有输出有用的信息:

error:function(response){ alert(response);alert(response.statusText); },

它仅输出:

[object XMLHttpRequest]  
OK

为什么会陷入错误回调?

最佳答案

错误回调还有更多有用的参数。尝试获取 textStatus。

error: function(XHR, textStatus, errorThrown) { console.log(textStatus); } 

检查那是什么。

一个快速猜测是您打算使用dataType: 'text'而不是'text/plain'。 (Check documentation)

$.ajax({
    type:'POST',
    data: $("#flowFormSubmit").serialize(),
    dataType:'text',
    timeout:1000,
    success:function(response){
        if(-1 == response)
                alert('fail');
        else
                alert('succeed');
    }
});

关于jquery - response.statusText ="OK"但陷入 ajax 与 jQuery 的错误回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1414205/

相关文章:

javascript - 棘手的 div 重叠

javascript - JS 滚动发生在页面准备好之前

php - 无法使用 AJAX 从 PHP 生成的 Bootstrap 选项卡中检索数据

java - 实时显示计算进度,即使浏览器关闭也能保留进度

javascript - xml 到 json 转换中不需要的字段?

javascript - 删除JS数组元素

jquery - 如何获取 <p :selectBooleanCheckbox> in jQuery 的检查状态

日期选择器中的 jquery 下一个和上一个按钮无法正常工作

javascript - HIGHCHARTS - Jquery/Ajax 从 ajax 调用的 php 文件访问 php 变量

javascript - 如何等待 AJAX 响应并仅在该响应之后呈现组件?