jqueryを使用しているときに「when、then」を実行していくつかの操作を行います。 doAddProcedure関数を使用して計算を実行しています。 doAddProcedure関数でコードを実行した後のような結果が期待されている場合、コントロールはAddProceduresに戻り、Doneセクションのコードに戻ります。しかし、期待どおりに機能しませんでした。また、私はdoAddProcedureセクションのコードの実行時に表示するローダーを表示しています。ローダーは、doAddProcedureでコードを実行するのにかかる時間に表示されませんでした。私の英語のためissue.Sorryを修正するために私を助けてくださいことはjquery "when + Then"が期待どおりに動作しない
これはあなたがwhen
then
に約束を延期渡したりしていない時にすぐに実行されるため
var tot_codes = 0;
function doAddProcedure(thisval)
{
top.ShowAjaxLoader('Loading..');
var countval = $("#last_id").val();
//My code block....
return true;
}
/**
* Function to add procedures
* @returns {undefined}
*/
function AddProcedures(thisval)
{
$.when(doAddProcedure(thisval)).then(function(){
if (tot_codes > 0) {
//setTimeout(function(){
top.notification('successfully added the codes.');
//top.window.parent.document.getElementById('circularG').hide();
window.parent.phFrntpayClosePopup();
//top.window.parent.document.getElementById("loaderHtml").style.display = "none";
//}, 3000);
} else {
top.notification('Please select atleast one code.');
}
});
}
AddProcedures(thisval); // Calling main Function
[リンク](http://stackoverflow.com/help/mcve) –
私はコードブロックを削減。 –