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

大神帮忙看下这段代码

<!DOCTYPE html>
<html>
 <head>
  <title> 事件</title>  
  <script type="text/javascript">
   function count(){
      var num1=document.getElementById("txt1").value;
    //获取第一个输入框的值
      var num2=document.getElementById("txt2").value;
    //获取第二个输入框的值
    var a=document.getElementById("select").value;
    //获取选择框的值
    var sum;
    switch (a)
    {
     case '+':
          sum= num1+num2;
          return sum;
          break;
     case '-':
         sum= num1-num2;
         return sum;
         break;
     case '*':
         sum= num1*num2;
         return sum;
         break;
     default:
         sum= num1/num2;
         return sum;
    }
    //获取通过下拉框来选择的值来改变加减乘除的运算法则
    document.getElementById("fruit").value=sum;
    //设置结果输入框的值
    
   }
  </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>

正在回答

2 回答

首先,取txt的值时要转换类型为int。否则+运行相当于字符串拼接。

其次你的switch过程产生的num在之后要用的,所以不能在switch中return,否则执行不到后面的代码

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

Libertine 提问者

非常感谢!基础不过关,谢谢指正
2017-08-26 回复 有任何疑惑可以回复我~

改为这样就好了,

sum=parseInt(num1) + parseInt(num2);

加号是重载运算符,这里他解析为了连接,你把这两个数解释为整数,浏览器就会知道了,至于这个函数我是怎么知道的,哈哈哈,老师左边有提示到哦

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

Libertine 提问者

谢谢指正
2017-08-26 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
JavaScript进阶篇
  • 参与学习       468263    人
  • 解答问题       21891    个

本课程从如何插入JS代码开始,带您进入网页动态交互世界

进入课程

大神帮忙看下这段代码

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