weixin_33736649 2016-09-25 19:05 采纳率: 0%
浏览 40

从jQuery Ajax返回值

I am trying to return a value from a completed jQuery Ajax call. However, instead of the JSON data, I am receiving back "undefined." How can I modify my code to get the JSON data instead of undefined?

function callback(data) {
    return data;
}

var xv = jQuery.ajax( {
    url: 'http://www.domain.com/json.php',
    dataType: 'json',
    success: function(data) {
        alert('Success.'); // This is alerted.
    },
    error: function(data) {
        alert('File could not be processed.'); // This is not alerted.
    },
    complete: function(data) {
        callback(data);
    }
});

console.log(callback()); // Getting "undefined" here instead of data.
  • 写回答

2条回答 默认 最新

  • weixin_33725126 2016-09-25 19:13
    关注

    You aren't actually storing data anywhere. All you do is reflect back whatever is given to you, just like Sterling said

    I would modify it like so:

    var globalData;
    function(callback){
      globalData = data;
    }
    

    Then console.log(globalData) and you can see the result

    评论

报告相同问题?