ajax完成后调用函数

时间:2016-12-14 04:50:59

标签: javascript jquery ajax asynchronous

这是一个执行ajax调用的函数

function gettrans(callback) {
  var xml = $.ajax({
    method: 'GET',
    url: 'url/?callback=jsonpCallback',
    dataType: 'jsonp',
    jsonp: !1,
    jsonpCallback: "jsonpCallback",
    data: { drop_lang: dropjslang,},
    success: function (data) {
      callback();
    },
    error: function (data) {
    }
  });
  return xml.responseJSON
}

我想返回xml.responseJSON,但我得到undefined

什么可能是解决方案?

2 个答案:

答案 0 :(得分:2)

将结果传递给回调:

function gettrans(callback) {
  $.ajax({
    ...
    success: function (data) {
      callback(data);
    },
    ...
  });
}

答案 1 :(得分:1)

您应该在success中传递回调函数:

success: function(response) {
    console.log(response); // response is the data returned by your ajax query
}