0

次のコードを読んでください。

for (i = 0; i < 20; i++) {
  $.post( 'url', 'data='+ i, function (data) 
   {
      alert( 'Element ' + i + ' was added' );
   };
}

これをやると20POSTが同時に行われます!

私が必要とするのは、これを1つずつ(順次)行うことです...どうすればそれを行うことができますか?

4

1 に答える 1

2

コールバックでは、単純に関数を再度呼び出します。

function sendRequest(i) {
    $.post('url', 'data=' + i, function(data) {
        alert('Element ' + i + ' was added');

        if(i < 19) {
            sendRequest(i + 1);
        }
    });
}

sendRequest(0);
于 2012-07-27T03:39:55.180 に答える