我有 for 循环,并且正在更改先前在循环外声明的变量的值。我要做的是在一个重叠的 div 中显示正在被打开和关闭几秒钟的新值。有没有办法将这个值从循环内传递到循环外的叠加层?
<script>
function toggle(id) {
var e = document.getElementById(id);
e.style.display = (e.style.display == "block") ? "none" : "block";
}
</script>
<%
int var=3;
out.println("<div id='overlay'>");
out.println(var);
out.println("</div>");
for(int i=0;i<3;i++) {
var++;
out.println("<script>");
out.println("toggle('overlay');");
out.println("</script>");
Thread.sleep(3000); out.flush();
out.println("<script>");
out.println("toggle('overlay');");
out.println("</script>");
Thread.sleep(3000); out.flush();
}
%>
答案 0 :(得分:1)
您需要通过javascript动态更改div标签的内容。为此你可以输出
out.println("<script>document.getElementById(\"overlay\").innerHTML = \"" + var + "\"</script>
话虽如此......整个设置看起来有点奇怪。你究竟想要实现什么目标?