JS - 如何从for循环中的新行开始?

时间:2015-10-26 16:39:56

标签: javascript for-loop newline

点击按钮后,我试图打印6个随机数字。然后,每次我再次单击该按钮时,随机数应该从新行开始,但我不知道如何。我尝试了一切,没有任何作用。我感谢任何帮助。



        function fname() {
            for(i=1; i<=6; i++) {
                    number = number + Math.floor(Math.random() * 47 + 1) + "-";
                    var print = number + " GOOD LUCK!";
            }
            document.getElementById("total").value = print;
        }
&#13;
<!DOCTYPE html>
<html>
    <head>
        <title>Let's ROLL!</title>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <style>
            input, button {display: block;}
        </style>
        <script>
        var number = "";
        function fname() {
            for(i=1; i<=6; i++) {
                    number = number + Math.floor(Math.random() * 47 + 1) + "-";
                    var print = number + " GOOD LUCK!";
            }
            document.getElementById("total").value = print;
        }
        </script>
    </head>
    <body>
        <div>
            <button onclick="fname()">ROLL!</button>
            <textarea id="total" rows="12" cols="50" readonly></textarea>
        </div>
    </body>
</html>
&#13;
&#13;
&#13;

3 个答案:

答案 0 :(得分:2)

不是100%清楚你想要休息的地方,但在文本区域,换行符是\n。如果这是在HTML元素中,您将使用<br />

var number = "";

function fname() {
  for (i = 1; i <= 6; i++) {
    number = number + Math.floor(Math.random() * 47 + 1) + "-";
  }
  number = number + "\n";
  
  var print = number + "GOOD LUCK!";
  document.getElementById("total").value = print;
}
 input,
 button {
   display: block;
 }
<div>
  <button onclick="fname()">ROLL!</button>
  <textarea id="total" rows="12" cols="50" readonly></textarea>
</div>

答案 1 :(得分:1)

添加“\ n”。

我假设您要在文本区域中连接新文本,因此您应该使用+ =而不是=:

document.getElementById("total").value += print + "\n";

答案 2 :(得分:0)

您可以通过适当的分隔符将数组和.join()数字和行一起使用。这仅在元素之间插入字符。字符串中的\n呈现新行。

var button = document.getElementById('roll');
var total = document.getElementById('total');

var rolls = [];

button.onclick = function() {
    var roll = [];
    for(var i=0; i<6; ++i) roll.push(Math.floor(Math.random() * 47 + 1));
    rolls.push(roll.join('-'));
    total.value = rolls.join('\n') + "\nGOOD LUCK!";
}
<button id="roll">ROLL!</button><br>
<textarea id="total" rows="12" cols="50" readonly></textarea>