我以前见过这个问题,但是我尝试过的所有建议以及我自己的一些实验都失败了。
如果我使用 Javascript 运行以下代码,则 textarea 将仅显示 i (5) 的最后一个值。如果我使用被注释掉的警报,那么它就可以工作。
我尝试过使用超时、间隔、日期和时间延迟,甚至循环来延迟处理,但除非我在未注释掉时使用下面代码中使用的警报,否则没有任何效果。我知道一些延迟仍然允许处理继续。我还尝试将变量传递给其他函数以从那里显示在 textarea 中,因为它似乎在退出函数后 textarea 显示了最后一个值。
有什么建议可以让我在每次迭代时更新文本区域,以便一次显示一个数字 1 到 5?
而且我很好奇为什么当其他暂停操作的方法不起作用时警报会起作用。
谢谢。
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()">