ajax调用如何将数据返回给变量?

时间:2013-10-18 10:07:20

标签: javascript jquery ajax callback

function getMDBChanges(syncURL, LastSync, WSName, callback) {

    $.ajax({
           url: syncURL + WSName,
           dataType: "json",
           success: function (data) {
               callback(data);
           },
           error: function (model, response) {
               Notify("divNoteLeft","Nothing to be Sync'd from the Server with URL " + syncURL + WSName );
           }
    });

}

这是我正在运行的代码。这很好用。但我仍然不明白成功回调到底是做什么的 谢谢

3 个答案:

答案 0 :(得分:1)

success(和error)回调是函数引用(它们指向函数)。当jQuery收到对AJAX请求的成功响应时,它会执行函数引用所指向的函数,并向它传递三个参数:返回的响应(可能根据指定的dataType对其进行一些预处理),状态(作为字符串),以及发出请求的jqXhr对象。

它的全部功能:用一些参数调用一个函数; data只是函数定义中参数的名称,您可以随意调用它。它不会将任何数据返回给变量。

答案 1 :(得分:1)

在回调中,

function getMDBChanges(syncURL, LastSync, WSName, callback)

函数调用可能是回调区域中的内部函数。 例如,

getMDBChanges("www.xyz.com","21st April","WSName",function(data) {
   alert(data);
});

答案 2 :(得分:0)

无论你在代码中调用函数getMDBChanges,你都会传入一个回调函数,我假设它处理返回的数据。如果您想知道该功能是什么,请添加console.log(callback);,您将看到该功能的确切含义以及它正在做什么。