如何使这个计算器工作

时间:2018-04-19 08:04:29

标签: javascript html calculator calc

我遇到了麻烦,正如你在代码中看到的那样,对于result3,因为id我有op1,我想在那里工作,因为它的工作原理是id会根据按下的按钮而改变,我怎么能这样做?因为现在每个按钮都像一个+。



<!DOCTYPE html>
    <html>
    <head>
   <title>Hello!</title>
   </head>
   <script>

  function getResult()
  {
    var result1 = document.getElementById("number1").value;
    var result3 = document.getElementById ("op1").value;
    var result2 = document.getElementById("number2").value;
    calculate (result1,result3,result2);
  }

  function calculate(num1,operator,num2)
  {
    if (operator== '+')
      {
        var res1 = parseFloat(num1)+parseFloat(num2);
        alert(res1);
      }
    else if (operator== '-')
      {
        var res2 = parseFloat(num1)-parseFloat(num2);
        alert(res2);
      }
    else if (operator== '*')
      {
        var res3 = parseFloat(num1)*parseFloat(num2);
        alert(res3);
      }
   else if (operator== '/')
      {
        var res4 = parseFloat(num1)/parseFloat(num2);
        alert(res4);
      }
   else
      {
        alert("Nothing from above!");
      }

  }
    </script>

    <body>
      <form action="get" method="#">
        <input type="text" name="text1" value="" id="number1"  /> <br/>
        <input type="text" name="text2" value="" id="number2" /> <br/>

        <input type="button" name="o1" value="+" id="op1" onclick="getResult();"/>
        <input type="button" name="o2" value="-" id="op2" onclick="getResult();"/>
        <input type="button" name="o3" value="*" id="op3" onclick="getResult();"/>
        <input type="button" name="o4" value="/" id="op4" onclick="getResult();"/>      

        <input type="button" name="calc" value="Calculate" onclick="getResult();"/>
      </form>

    </body>
 </html>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:1)

您始终使用id =&#34; op1&#34;来调用输入值,在您的情况下为+。为什么不通过这个值?

    getResult(id) {
      var result1 = document.getElementById("number1").value;
      var result3 = document.getElementById (id).value;
      var result2 = document.getElementById("number2").value;
      calculate (result1,result3,result2);}

调用函数时传递id:

<input type="button" name="o1" value="+" id="op1" onclick="getResult(id);"/>
    <input type="button" name="o2" value="-" id="op2" onclick="getResult(id);"/>
    <input type="button" name="o3" value="*" id="op3" onclick="getResult(id);"/>
    <input type="button" name="o4" value="/" id="op4" onclick="getResult(id);"/> 

计算按钮不会以这种方式工作,但这是您的设置的快速解决方法。祝你好运。