从javascript函数多次在段落元素中显示数字

从javascript函数多次在段落元素中显示数字,javascript,html,Javascript,Html,我希望在html中ID=“demo”的段落元素中多次显示JavaScript函数中的数字(从循环中) 运行程序时,我的浏览器网页冻结 有什么问题 <!DOCTYPE html> <html> <script> function func(x) { for (var i=0;i<10;i++) document.getElementbyId("demo").innerHTML=(x*i)+"</br>"; }

我希望在html中ID=“demo”的段落元素中多次显示JavaScript函数中的数字(从循环中)

运行程序时,我的浏览器网页冻结

有什么问题

<!DOCTYPE html>
<html>
<script>
  function func(x)
  {
     for (var i=0;i<10;i++)
       document.getElementbyId("demo").innerHTML=(x*i)+"</br>";
  }
</script>
<body>
  <form>
    input year:
    <input type="text" id="year">
    <input type="button" value="find type" onclick="func(year.value);">
   </form>
   <p id="demo"></p>

 </body>

函数func(x)
{

对于(var i=0;i不确定浏览器冻结的原因——可能是因为
getElementbyId
(应该是
getElementbyId
)中的输入错误,所以没有看到结果

第二个问题:每次通过
for
循环都会覆盖以前的循环,因此只能看到最后一次迭代的结果

相反,在循环的每个过程中附加HTML,或者将其收集到变量中,并在最后将其放入文档中,就像我在这里所做的那样:

函数func(x){ var ret=“”; 对于(变量i=0;i<10;i++){ ret+=(x*i)+“
”;//
不正确;
不是必需的 } document.getElementById(“demo”).innerHTML=ret; }

投入年份:

为什么input year不在标签中?我认为这不会改变问题。如果JS中有一个输入错误,那么您使用的是
getElementbyId
,而不是
getElementbyId
,但这不应该冻结浏览器,问题一定在其他地方。