Ajax返回错误调用不返回

时间:2019-01-01 07:57:30

标签: javascript jquery ajax

我在类似这样的函数中有一个Ajax调用:

function send_data(url, data) {
    $.ajax({
        url: url,
        type: 'POST',
        data: data,
        success: function (data) {
            //Empty for now
        },

        error: function (xhr) {
            return xhr.responseJSON;
        },

    });
}

然后我像这样触发该功能:

console.log(send_data(url, data));

我应该收到响应输出,但是我没有。相反,我不确定。我知道JavaScript是异步的,但这不行吗?我在return语句之前的错误函数内添加了console.log输出,它可以正确输出数据。那么为什么它不返回数据呢?

1 个答案:

答案 0 :(得分:2)

您所做的基本上是在函数内部声明函数

function foo(){
  function bar(){console.log('in bar')}
}

console.log(foo())

如您所见,bar没有被调用(在您的情况下将由jQuery调用)