この問題が以前に尋ねられたのを見たことがありますが、私が試したすべての提案と、自分でのいくつかの実験は失敗しました。
Javascript を使用して次のコードを実行すると、テキストエリアには i (5) の最後の値のみが表示されます。コメントアウトされたアラートを使用すると、機能します。
タイムアウト、インターバル、日付と時刻の遅延、さらにはループを使用して処理を遅らせようとしましたが、コメントアウトされていないときに以下のコードで使用されているアラートを使用しない限り、何も機能しません。多少の遅延があっても、処理を続行できることは承知しています。関数を終了した後、テキストエリアに最後の値が表示されるように見えるため、変数を他の関数に渡してそこからテキストエリアに表示しようとしました。
1 から 5 までの数字が一度に 1 つずつ表示されるように、各反復でテキストエリアを更新する方法を教えてください。
そして、アクションを一時停止する他の方法では機能しないのに、なぜアラートが機能するのか興味があります。
ありがとう。
function Go(){
var i = 0;
for(i=0; i<6; i++){
alert("This allows textarea to update with each iteration");
document.getElementById("ta").value = "";
document.getElementById("ta").value = i;
}
}
<textarea id="ta" name="display" rows="15" cols="50"></textarea>
<br /><INPUT TYPE="button" VALUE="START" onClick="Go()">