javascript - 我的 javascript 代码只打印一行。我需要它来打印 10 行 20 个字符。

标签 javascript

这是一个掷硬币随机发生器。我需要打印出 10 行和 20 列。这就是我被困的地方。每次单击我的按钮时,我的代码似乎都会正确随机化,它显示 20 列,但我似乎无法让它打印第二行。这可能很简单,我只是没有捕获。任何事情都会受到赞赏。

Javascript 代码

function toss()
{
var heads = "x ";
var tails = "o ";
var rows = 0;
while(rows < 10)
{   
    var arr = new Array(20);
    for(var i = 0; i < arr.length; i++)
    {       
        var val = Math.floor( Math.random() * 2 );
        if(val === 1)
        {
            arr[i] = " x";
        }
        else
        {
            arr[i] = " y";
        }   
        document.getElementById("results").innerHTML = arr + "<br />";
    }
    delete arr;
    rows++
}
}

HTML:

<html>
<head>
<title>Coin Flip</title>
<script src="Toss.js" type="text/Javascript"></script>
<style>
#results
{
    display: block;
}
</style>
</head>

<body>
Push Button to Flip -> <input type="button" onclick="toss()" value=" Flip ">
<span id="results"></span>
</body>
</html>

最佳答案

问题是每次用新行创建行时,您都在替换整个结果输出。您需要追加而不是替换。所以改变这个:

document.getElementById("results").innerHTML = arr + "<br />";

收件人:

document.getElementById("results").innerHTML += arr + "<br />";

您还需要将结果的追加移出内部 for 循环!如果您将追加保留在 for 中循环,您将看到此行为:http://jsfiddle.net/t1s93Lqz/3/

JSFiddle:http://jsfiddle.net/t1s93Lqz/2/

关于javascript - 我的 javascript 代码只打印一行。我需要它来打印 10 行 20 个字符。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30832470/

相关文章:

javascript - 有没有办法在数据表的每一行上添加按钮? [ react js]

javascript - 更新值后如何通过 jQuery 输出 XML 节点?

javascript - 在 Firefox 和 Chrome 中使用 jQuery 获取 JSON 结果时出现问题(IE8 工作)

javascript - 伊斯兰(回历)日历的 Javascript Intl.DateTimeFormat() 输出在 'islamic' 和 'ar-SA' 之间存在差异

javascript - 使用 Jquery 和 Ajax 根据组合框中选定的值自动填充表单

javascript - Eternicode Bootstrap 日期选择器在触摸 Android Webkit< 534 后选择输入

javascript - Jquery 照片上传仅接受 jpeg 不起作用

javascript - 如何将 javascript 值分配给临时数据

javascript - 几个句子/文本正弦波Jquery动画

javascript - 将按钮插入到内容脚本的 DOM 中