javascript - 跳过延迟对象

标签 javascript jquery jquery-deferred

我正在尝试跳过 ajax 请求(多池):

        function doRequest(next) {
            if (ajaxOpts.ajaxRequestType == "bla") {
                console.log("next");
                $.Deferred().reject().then(next, next);
            } else {
                jqXHR = $.ajax(ajaxOpts)
                    .done(dfd.resolve)
                    .fail(dfd.reject)
                    .then(next, next);
            }
        }

但是$.Deferred().reject().then(next, next);

似乎没有调用下一个函数。难道我做错了什么?

编辑:下一个功能似乎是:

 function () {
            jQuery.dequeue( elem, type );
        }

最佳答案

您错误地使用了 deferred,请参阅 jQuery 站点上的示例: http://learn.jquery.com/code-organization/deferreds/examples/

或者看看这个 fiddle :http://jsfiddle.net/mbMQz/1/

x = jQuery.Deferred(function(defer){
    defer.reject();
}).then(function(){ alert('1') }, function(){ alert('2') });

关于javascript - 跳过延迟对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23495651/

相关文章:

javascript - Dojo domConstruct.create

javascript - div背景图片不改变重新上传

javascript - 使用 Greasemonkey 将类添加到 iframe 的主体

javascript - 无论如何要传递 jquery deferred $.when 数组?

javascript - 如何在我的html上显示在ajax端运行良好的php函数

javascript - 有没有办法在 Reactjs 中设置元素的初始高度?

javascript - 在 jQuery.on() 事件调用的现有 Javascript 函数中使用 "this"作为参数

jquery - 使用 .when.apply() 检索延迟的 jquery ajax 请求的索引

javascript - 数组循环中的 AJAX 调用,仅在前一个完成后调用下一个

javascript - 马来西亚手机号码的正则表达式模式