我正在try 用Java脚本创建一个程序,打印两个随机数并计算它们的总和.这应该很容易,但由于某些原因,我不能让程序工作.我有打印随机数字的程序,但我不能让它把数字加在一起.我做错了什么?


<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
</head>
    <body>

        <p id="myBtn"></p>
        <p id="number1"></p>
        <p id="number2"></p>

        <button id="myBtn" onclick="myFunction()">Get random number</button>


        <script>

            var allNumbers = 0;

            function myFunction() {
                num1 = document.getElementById("number1").innerHTML = Math.floor(Math.random() * (7 - 1) + 1);
                num2 = document.getElementById("number2").innerHTML = Math.floor(Math.random() * (7 - 1) + 1);
                var inTotal = num1 + num2;
                var allNumbers =+ inTotal;
            }

            document.write(allNumbers);

        </script>

    </body>
</html>

推荐答案

您的代码几乎是正确的!以下是一些如何解决这个问题的小贴士:

  • 您有两个元素具有相同的id属性:<p><button>元素.在HTML中,id个属性在页面上应该是唯一的,因此您应该将id个属性中的一个属性更改为其他属性.例如,您可以将<button>元素的id更改为"myBtn".

  • 当您单击该按钮时,将调用myFunction()函数,并在<p>个元素中生成并显示随机数,但不会在任何地方显示这些数字的总和.要解决此问题,您可以添加另一个<p>元素,其中将显示数字的总和.

  • myFunction()函数中,inTotal变量是该函数的局部变量,因此在函数外部不可用.要解决这个问题,可以添加一个名为total的全局变量来保存这些数字的总和,然后在myFunction()函数中更新total变量.

  • 最后,您将使用document.write()方法来显示数字的总和,但此方法将用输出覆盖整个页面.相反,您可以使用<p>元素的innerHTML属性用这些数字的和来更新元素的内容.

以下是应该可以工作的代码的更新版本:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
</head>
    <body>

        <p id="number1"></p>
        <p id="number2"></p>
        <p id="total"></p>

        <button id="myBtn" onclick="myFunction()">Get random number</button>

        <script>
            var total = 0;

            function myFunction() {
                num1 = document.getElementById("number1").innerHTML = Math.floor(Math.random() * (7 - 1) + 1);
                num2 = document.getElementById("number2").innerHTML = Math.floor(Math.random() * (7 - 1) + 1);
                total = num1 + num2;
                document.getElementById("total").innerHTML = total;
            }
        </script>

    </body>
</html>

Javascript相关问答推荐

如何在表格上拥有水平滚动条,在正文页面上拥有垂直滚动条,同时还对html表格的标题使用位置粘性?

Redux工具包查询(RTKQ)端点无效并重新验证多次触发

传递一个大对象以在Express布局中呈现

将状态向下传递给映射的子元素

如何禁用附加图标点击的v—自动完成事件

Google maps API通过API返回ZERO_RESULTS,以获得方向请求,但适用于Google maps

构造HTML表单以使用表单数据创建对象数组

无法读取未定义错误的属性路径名''

闭包是将值复制到内存的另一个位置吗?

Web Crypto API解密失败,RSA-OAEP

检索相加到点的子项

如何访问此数组中的值?

未捕获语法错误:Hello World中的令牌无效或意外

将相关数据组合到两个不同的数组中

在渲染turbo流之后滚动到元素

P5JS-绘制不重叠的圆

如何创建一个for循环,用于计算仪器刻度长度并将其放入一个HTML表中?

使用onClick单击子元素时,使用交点观察器的关键帧动画意外运行

如何从嵌套的json中获取最大值

将数据添加到数据库时不输出