javascript中的简单计算不能正常工作

时间:2014-09-10 10:14:28

标签: javascript

我在javaScript中创建了一些简单的函数。但是当我打印结果时,我得到正确的乘法和除法结果,但不是加法和减法。

为什么这样,功能几乎是同一性的。

            <script type="text/javascript">
            function multiplyBy()
            {
                num1 = document.getElementById("firstNumber").value;
                num2 = document.getElementById("secondNumber").value;
                document.getElementById("result").innerHTML = num1 * num2;
            }

            function divideBy() 
            { 
                num1 = document.getElementById("firstNumber").value;
                num2 = document.getElementById("secondNumber").value;
                document.getElementById("result").innerHTML = num1 / num2;
            }

            function addition() {
                num1 = document.getElementById("firstNumber").value;
                num2 = document.getElementById("firstNumber").value;
                document.getElementById("result").innerHTML = num1 + num2;
            }

            function subtract() {
                num1 = document.getElementById("firstNumber").value;
                num2 = document.getElementById("firstNumber").value;
                document.getElementById("result").innerHTML = num1 - num2;
            }
            </script>

<body>
<form>
            <p>1st Number: <input type="text" id="firstNumber" /><br></p>
            <p>2nd Number: <input type="text" id="secondNumber" /><br></p>
            <input type="button" class="btn btn-success" onClick="multiplyBy()" Value="Multiply" />
            <input type="button" class="btn btn-warning" onClick="divideBy()" Value="Divide" />
            <input type="button" class="btn btn-danger" onClick="addition()" Value="Add" />
            <input type="button" class="btn btn-primary" onClick="subtract()" Value="Subtract" />
        </form>
        <br/>
        <p>The Result is : <br/>
            <span id = "result"></span>
        </p>
</body>

2 个答案:

答案 0 :(得分:3)

更改

        function addition() {
            num1 = document.getElementById("firstNumber").value;
            num2 = document.getElementById("firstNumber").value;
            document.getElementById("result").innerHTML = num1 + num2;
        }

        function subtract() {
            num1 = document.getElementById("firstNumber").value;
            num2 = document.getElementById("firstNumber").value;
            document.getElementById("result").innerHTML = num1 - num2;
        }

        function addition() {
            num1 = parseInt(document.getElementById("firstNumber").value);
            num2 = parseInt(document.getElementById("secondNumber").value);
            document.getElementById("result").innerHTML = (num1 + num2);
        }

        function subtract() {
            num1 = parseInt(document.getElementById("firstNumber").value);
            num2 = parseInt(document.getElementById("secondNumber").value);
            document.getElementById("result").innerHTML = (num1 - num2);
        }

三件事,将输入解析为数字,使用正确的num为num2并在括号中进行计算以确保安全

答案 1 :(得分:1)

您的加/减功能中存在拼写错误。你得到的第一个号码&#39;同时!哦,小事......; - )

您也可以尝试前一个注释中提到的parseInt(),parseFloat()函数,以确保您处理正确的数据类型。