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

我这个代码,为什么加法运算不是2数相加?找不到哪里写错了?

<!DOCTYPE html>

<html>

 <head>

  <title> 事件</title>  

  <script type="text/javascript">

   function count(){

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

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

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

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

var p="";

    //获取选择框的值

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

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

    //设置结果输入框的值 

   switch(px)

   {

       case "+":

           p = p1 +p2;

           break;

       case "-":

           p = p1 -p2;

            break;

       case "*":

           p = p1*p2;

            break;

       case "/":

           p = p1/p2;

            break;

   }

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

   

   }

  </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=' = ' /> <!--通过 = 按钮来调用创建的函数,得到结果--> 

   <input type='text' id='fruit' onclick="count()" />   

 </body>

</html>


正在回答

3 回答

你的p1和p2接收到的是String类型的值 你用alert(typeof(p1))试一下就知道了   要用parseInt转型

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

请叫我_灰灰 提问者

非常感谢。 完全没有考虑到这个类型问题,零基础学习,怎么培养这种能力。看到这种立即想到
2016-02-01 回复 有任何疑惑可以回复我~
#2

请叫我_灰灰 提问者

我还有点不明白,为什么就是第一个case是字符串,其他的case就是number类型呢? 在case“-”后面加了alert(typeof(p)); 是弹出number类型的 但是为什么会这样?
2016-02-01 回复 有任何疑惑可以回复我~
#3

请叫我_灰灰 提问者

非常感谢!
2016-02-02 回复 有任何疑惑可以回复我~

我还有点不明白,为什么就是第一个case是字符串,其他的case就是number类型呢?

在case“-”后面加了alert(typeof(p)); 是弹出number类型的 
但是为什么会这样?

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

我还有点不明白,为什么就是第一个case是字符串,其他的case就是number类型呢?

在case“-”后面加了alert(typeof(p)); 是弹出number类型的 
但是为什么会这样?

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

断了的弦外之音

关于为什么会是字符串可能问题出在这里-->var p=""; 你的p是string类型,所以p=p1+p2的时候,右边的number类型的值被转换成了string类型,你先不给p赋初值试试看。其实p的类型我们不关心,只要p1和p2是number类型的,这样就能运算。
2016-02-02 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

我这个代码,为什么加法运算不是2数相加?找不到哪里写错了?

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号