一連の一連の操作を一連のチェーンで完了するコードがあります。一連の操作自体がループで実行されます。私が扱っているシステムの性質上、操作セットは同期的に実行する必要があります (つまり、次の操作セットは最初のセットが完了するまで実行できません)。非同期実行は、(私の制御下にない) リモート プロセッサを停止させ、コードが失敗する原因となる可能性があります。現在、これを機能させることができた唯一の方法は、アラートボックスを使用することです。これは本当に不十分であり、オプションではありません. 私はもう試した:
- $.ajax を使用し、async を false に設定する
- スリープ機能を使う
- アラート ボックス (必死で使用)
ここにコードがあります - 何か考えはありますか?:
$('input:checked').each(function(index){
//get the item's location id
var currentInput = $(this).val();
var copyUser = function(){$.get(urlCopyPrefix + currentInput + urlSuffix);}
var moveUser = function(){$.get(urlMovePrefix + moveLocation + urlSuffix);}
var cleanup = function(){
var newSibling = $('#module-' + moveLocation);
newSibling.before('<li>New Line</li>');
alert('done');
}
/* --> THIS IS THE CODE IN QUESTION <-- */
$.when(copyUser()).pipe(moveUser).then(cleanup);
});