我有多个函数说functionOne,callFunctionTwo,callFunctionThree。 从functionOne,它必须执行callFunctionTwo()。之后callFunctionThree()必须启动。 例如: -
function functionOne(mapingid)
{
callFunctionTwo(mapingid);
callFunctionThree(mapingid);
}
由于javascript是异步的,我使用了setTimeOut()。 如: -
function functionOne(mapingid)
{
callFunctionTwo(mapingid);
}
function callFunctionTwo(mapingid)
{
//some code
setTimeout(function () { callFunctionThree(mapingid); }, 100);
}
function callFunctionThree(mapingid)
{
//some code
}
这段代码工作正常。 那么如何实现done(),when(),then()函数来克服这个问题呢?
答案 0 :(得分:0)
以这种方式使用jQuery.when().done()
:
jQuery.when(firstAjax, secondAjax).done(function(firstAjaxdata, secondAjaxdata){
console.log('firstAjaxdata:::', firstAjaxdata);
console.log('secondAjaxdata:::', secondAjaxdata);
});
其中firstAjax, secondAjax
应该是ajax调用。