Javascript For循环和getElementById
希望这是一个简单的方法,但是我在从for循环打印出一个数字序列并返回到HTML时遇到了麻烦。下面是我的代码,当我按下按钮时,它只返回10,而不返回其余的数字——我哪里出错了Javascript For循环和getElementById,javascript,html,for-loop,getelementbyid,Javascript,Html,For Loop,Getelementbyid,希望这是一个简单的方法,但是我在从for循环打印出一个数字序列并返回到HTML时遇到了麻烦。下面是我的代码,当我按下按钮时,它只返回10,而不返回其余的数字——我哪里出错了 <!DOCTYPE html> <html> <body> <button onclick="myFunction()">Try It</button> <p id="number"></p> <script
<!DOCTYPE html>
<html>
<body>
<button onclick="myFunction()">Try It</button>
<p id="number"></p>
<script>
function myFunction() {
for (i=0; i<11; i++) {
document.getElementById("number").innerHTML=i+"</br>";
}
}
</script>
</body>
</html>
试试看
函数myFunction(){
for(i=0;iSetting.innerHTML with=完全更改其内容。
使用+=追加内容
document.getElementById("number").innerHTML += i + "</br>";
document.getElementById(“数字”).innerHTML+=i+“”;
您正在替换每个循环中元素的内容。如果要添加内容,请使用+=
而不是=
(作为最小更改):
旁注1:您的代码受到攻击,因为您没有声明i
。我已经通过声明解决了上述问题
旁注2:
是无效的标记。在HTML中,它是
(或
;结尾/
完全是可选的)。在XHTML中,它是
,因为大多数其他答案都向您显示了错误,下面是对代码的编辑,它显示了如何获得所需的结果,但每次循环都不会命中DOM:
function myFunction() {
// create an array
var arr = [];
for (var i = 0; i < 11; i++) {
// push the data to the array
arr.push(i + '<br/>');
}
// grab the element and then add the joined array to the html
document.getElementById("number").innerHTML = arr.join('');
}
函数myFunction(){
//创建一个数组
var-arr=[];
对于(变量i=0;i<11;i++){
//将数据推送到阵列
arr.push(i+'
');
}
//抓取元素,然后将连接的数组添加到html中
document.getElementById(“number”).innerHTML=arr.join(“”);
}
document.getElementById(“number”).innerHTML+=i+“”;
这是因为每次运行循环时,您都将其设置为i+“
”…您需要非常了解您,这正好解释了我需要什么!非常感谢。@Davidwaren:不用担心,很高兴这有帮助。
document.getElementById("number").innerHTML+=i+"</br>";// see the `+`
document.getElementById("number").innerHTML+=i+"</br>";
// here -----------------------------------^
function myFunction() {
var i, s = "";
for (i=0; i<11; i++) {
s += i + "<br>";
}
document.getElementById("number").innerHTML = s;
}
function myFunction() {
// create an array
var arr = [];
for (var i = 0; i < 11; i++) {
// push the data to the array
arr.push(i + '<br/>');
}
// grab the element and then add the joined array to the html
document.getElementById("number").innerHTML = arr.join('');
}