我有這個事件的按鈕:使用延遲jQuery的非同步POST調用
$("#getSensorsObs").click(function (e) {
e.preventDefault();
postCallOne();
postCallTwo();
});
我想postCallTwo
火的時候postCallOne已成功完成了第一個電話。
function postCallOne() {
setWait();
//do something
return $.post(ADDRESS, {fieldONE : fieldOneVal })
.done(function (data) {
console.log("RESPONSE SUCCESS ");
// do something
}).error(function(x, t, m) {
alert(x + ' ' + t + ' ' + m);
}
}).then(function (resp) {
return $.Deferred(function(def){
def.resolveWith({},[resp == 1,valueSelected]);
}).promise();
});
這是第二個功能:
function postCallTwo() {
setWait();
//do something
return $.post(ADDRESS2, {fieldONE : fieldOneVal })
.done(function (data) {
console.log("RESPONSE SUCCESS ");
// do something
}).error(function(x, t, m) {
alert(x + ' ' + t + ' ' + m);
}
});
});
我有嘗試:
$("#button").click(function (e) {
e.preventDefault();
postCallOne.then(function(){postCallTwo();});
});
但我已經回到postCallOne.done不是一個函數。
我不太清楚延期,誰能幫幫我?
非常感謝。
'postCallOne()。done(postCallTwo);'?! –