如何在AJAX中像.done一样进行jQuery回调?

时间:2014-07-29 10:59:25

标签: jquery

如何在AJAX中像.done一样进行jQuery回调?

我需要这样做:

myMethod(args)
    .done(function(args) {
        console.log(true);
    });

提前致谢。

2 个答案:

答案 0 :(得分:2)

有点不清楚你在问什么。这是你想要的吗?

function myMethod(){

    var dfd = $.Deferred();

    // simulate something async:
    setTimeout(function(){
        dfd.resolve({foo: true}); // pass some dummy data
    }, 500);

    return dfd.promise();
}

myMethod().done(function(args){
    console.log(args.foo);
});

http://jsfiddle.net/9MRr9/1/

在此处详细了解延迟对象:http://api.jquery.com/category/deferred-object/

答案 1 :(得分:0)

不清楚你想要做什么。您可以使用$.ajax进行ajax调用,并在请求完成后提供函数。 创建自己的函数并传入回调。

示例

function doRequest(callback) {
    $.ajax({
      url: "yourUrl",
    }).done(callback));
}

doRequest(function(data) {
  // do something
});

更多信息: