2

when().then() 模式在以下情况下:

$.when(setServerValue("true"))
    .then(function(){
        console.log('done setting new value');
        performSomeOperation();
    })
    .fail(function(){
        alert('server value not set!');
    });

var setServerValue = function(newValue){
    return $.post('http://myURL',{key:newValue});
};

这里的问题是从来没有使用 $.post() 操作调用“then”或“fail”操作。我已经成功地将这种方法用于 $.get() 操作,如果我正确理解 API 文档(显然不是),这也应该适用于 $.post 操作。

有人可以帮我吗?谢谢!

4

1 回答 1

2

问题是 setServerValue 在您调用它时未定义为函数。将 setServerValue 的定义移到 $.when 调用之上。

工作示例:http: //jsfiddle.net/petersendidit/JHkKG/

于 2011-09-02T17:52:43.023 回答