Я хотел бы передать результат моей функции 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
объектом со всеми его преимуществами и идиосинкразией ...
Ваш обратный вызов 'then' не является функцией. – Blender
+1 для решения - слишком плохо, я не могу его принять. – tim