根据输入显示多个div

时间:2017-07-13 02:48:07

标签: javascript

我有一个输入类型编号

<input type="number" class="form-control" id ="nbchambre" name="nbchambre" onchange="myFunction()">

我有另一个输入,我想根据用户输入的数字多次显示,现在我写了这个javascript代码:

function myFunction(){
            var n = document.getElementById("nbchambre").value;
            for(count = 1; count < n+1; count++){
                var div = document.createElement('div');
                div.innerHTML = 'test';
                document.getElementById('content').appendChild(div);
            }
        }

但是这段代码不起作用,当我写一个数字时,div会显示“测试”字样。数字的10倍(例如,当我写3时,它将显示单词test 30次),当我在写3后写5时,它将添加50&#39; test&#39;到第30个&#39;测试&#39;。我不擅长JavaScript,所以请帮我修复这段代码。感谢

1 个答案:

答案 0 :(得分:2)

您需要确保将输入值转换为数字。否则它将被视为一个字符串。

&#13;
&#13;
<input type="number" class="form-control" id ="nbchambre" name="nbchambre" onchange="myFunction()">

<div id="content"></div>
<script>
function myFunction(){
            var n = Number(document.getElementById("nbchambre").value);
            var content = document.getElementById('content');
            content.innerHTML="";
            for(var count = 1; count < n+1; count++){
                var div = document.createElement('div');
                div.innerHTML = 'test';
                content.appendChild(div);
            }
        }
 </script>
&#13;
&#13;
&#13;