我想将我的 ajax 函数的结果传递给另一个函数(有点像“冒泡一个事件”)。我真的需要保持 ajax 包装函数原样,即通用,所以我正在寻找一个不涉及的解决方案myAjaxHandler()
$('button').on(
'click',
myAjaxHandler()
);
function myAjaxHandler(){
return $.ajax({
...
});
}
myAjaxHandler().done(
function(result){
console.log(result); // shows 'hello'
}
).then(
console.log('hi') // shows before 'hello'
);
我首先得到“嗨”,然后是“你好”,但我想要的是另一种方式:首先是“你好”,然后是“嗨”。我确定我没有.then()
以正确的方式使用,坦率地说,我开始认为我永远不会真正掌握$.Deferreds
- 我认为$.ajax
这是一个Deferred
具有所有优点和特质的对象......