为了账号安全,请及时绑定邮箱和手机立即绑定

为什么加法是错的,比如1+2=12 减乘除都是对的。

<!DOCTYPE html>

<html>

 <head>

  <title> 事件</title>  

  <script type="text/javascript">

   function count(){

       var d;

    //获取第一个输入框的值

    var a=document.getElementById("txt1").value;

//获取第二个输入框的值

    var b=document.getElementById("txt2").value;

//获取选择框的值

    var c=document.getElementById("select").value;

//获取通过下拉框来选择的值来改变加减乘除的运算法则

    switch(c)

    {

        case "+":

            d=a+b;

            break;

        case "-":

            d=a-b;

            break;

        case "*":

            d=a*b;

            break;

        case "/":

            d=a/b;

            break;

    }

    //设置结果输入框的值 

    document.getElementById("fruit").value=d;

   }

  </script> 

 </head> 

 <body>

   <input type='text' id='txt1' /> 

   <select id='select'>

<option value='+'>+</option>

<option value="-">-</option>

<option value="*">*</option>

<option value="/">/</option>

   </select>

   <input type='text' id='txt2' /> 

   <input type='button' value=' = ' onclick='count()'/> <!--通过 = 按钮来调用创建的函数,得到结果--> 

   <input type='text' id='fruit' />   

 </body>

</html>


正在回答

3 回答

"+"在JavaScript中还有“字符串连接符”的作用。例如:两个字符串"my" + "name" = "myname"。在你的代码中,是两个字符串类型的值相加,而没有用parseInt()函数将字符串转化成整数,所以自然返回字符串的连接。

0 回复 有任何疑惑可以回复我~

<!DOCTYPE html>

<html>

 <head>

  <title> 事件</title>  

  <script type="text/javascript">

   function count(){

       

    //获取第一个输入框的值

    var num1=parseInt(document.getElementById("txt1").value);

//获取第二个输入框的值

    var num2=parseInt(document.getElementById("txt2").value);

//获取选择框的值

    var op = document.getElementById("select").value;

//获取通过下拉框来选择的值来改变加减乘除的运算法则

    var res;

    switch(op)

    {

        case "+": res=num1+num2; break;

        case "-": res=num1-num2; break;

        case "*": res=num1*num2; break;

        case "/": res=num1/num2; break;

    }

    //设置结果输入框的值 

    document.getElementById("fruit").value=res;

   }

  </script> 

 </head> 

 <body>

   <input type='text' id='txt1' /> 

   <select id='select'>

<option value='+'>+</option>

<option value="-">-</option>

<option value="*">*</option>

<option value="/">/</option>

   </select>

   <input type='text' id='txt2' /> 

   <input type='button' value=' = ' onclick="count()"/> <!--通过 = 按钮来调用创建的函数,得到结果--> 

   <input type='text' id='fruit' />   

 </body>

</html>


1 回复 有任何疑惑可以回复我~
#1

changyaoguo

非常感谢你的帮助!!!!!
2016-02-12 回复 有任何疑惑可以回复我~

要用parseInt函数把getElementById获取的字符串转化为整形

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么加法是错的,比如1+2=12 减乘除都是对的。

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信