为什么按等号没有反应?

来源:6-11 编程练习

杜若清欢

2017-12-21 19:54

<!DOCTYPE html>

<html>

 <head>

  <title> 事件</title>  

  <script type="text/javascript">

   function count(){

   var a=parseInt(document.getElementById('txt1').value);

   var b=parseInt(document.getElementById('txt2').value);

   var select1=document.getElementById('select').value;

   var result='';

   switch(select1)

   {

       case"+":

       result=parseInt(a)+parseInt(b);

       break;

       case"-":

       result=parseInt(a)-parseInt(b);

       break;

       case"*":

           result=parseInt(a)*parseInt(b);

           break;

           case"/":

               result=parseInt(a)/parseInt(b);

               break;

   }

   document.getElementById('fruit').value=result;

       

   }

   

   

   

       

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

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

//获取选择框的值

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

    //设置结果输入框的值 

    

   }

  </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' />   

 </body>

</html>



写回答 关注

1回答

  • 小管小管不要你管
    2017-12-22 16:15:16
    已采纳

    <script type="text/javascript">

    function count(){

        var count=0;

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

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

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

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

        //获取选择框的值

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

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

        switch(sign){

            case "+":

                count = num1+num2;

                break;

            case "-":

                count = num1-num2;

                break;

            case "*":

                count = num1*num2;

                break;

            case "/":

                count = num1/num2;

                break;

            default:

                count = num1+num2;

                break;

        }

        //设置结果输入框的值 

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

    }

    </script>

    <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' />

    你要在=号的input框加上一个点击事件,而且你的swith循环写的格式有异,不标准,以上是我的代码,你可以参考下,如果有什么问题,可以一起讨论

    小管小管不要... 回复司徒幕课

    parsetInt是强制转换成整形,我们用js从input获取的数据就是字符类型,如果需要进行数值型处理的话,就用parseInt() parseFloat()这类转换函数转一下

    2018-01-23 14:01:39

    共 3 条回复 >

JavaScript进阶篇

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

468061 学习 · 21891 问题

查看课程

相似问题