故障输出使用的innerHTML号码的完整列表
-
25-09-2019 - |
题
以下是代码从1创建的数字的顺序列表至10我想利用该列表,并输出在div“分页”使用的innerHTML。然而,当我执行脚本,即输出的唯一的事情是数字10。当我使用document.write,而不是覆盖页,其输出的整个列表。谁能告诉我什么,我做错了什么?感谢。
function generateNumbers() {
var numbers = new Array();
// start generating numbers
for(var i = 1; i <= 10; i+= 1) {
numbers.push( i );
}
// print numbers out.
for(var i = 0; i < numbers.length; i++) {
document.getElementById("pagination").innerHTML = numbers[i] + "<br>";
}
}
和在HTML:
<div id="pagination"></div>
解决方案
好了,你的每一步覆盖innerHTML
。结果
尝试:
document.getElementById("pagination").innerHTML += numbers[i] + "<br>";
或者更好:
// no for loop
document.getElementById("pagination").innerHTML = numbers.join("<br>");
其他提示
for(var i = 0; i < numbers.length; i++) {
document.getElementById("pagination").innerHTML = numbers[i] + "<br>";
}
这取代了innerHTML
每循环一次,所以你只能看到最后一次迭代。
尝试使该=
一个+=
。
甚至更好,建起来的字符串,并与最终的字符串设定innerHTML
一次。这将更快,因为它仅需要分析该字符串作为HTML一次,而不是100次。
不隶属于 StackOverflow