找不出来哪里错了

来源:6-11 编程练习

qq_Timebegin_0

2018-06-14 16:56

<script type="text/javascript">
   function count(){
        var a = document.getElementById('txt1').value;
        var b = document.getElementById('txt2').value;
    var c = document.getElementById('select').value;
    var d = '';
        switch(c){
            case '+':
               d = a + b ;
            break;
            case '-':
                d = a - b;
            break;
            case '*':
                d = a * b;
            break;
            case '/':
                d = a / b;
            break;
        }
   var e = document.getElementById('fruit').value;
   e = 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' />

我找不出来哪里错了   各位大神帮我看看哪里错了

写回答 关注

5回答

  • 阳火锅
    2018-06-15 10:20:23
    已采纳

    跟着我的思路来哦。。你首先搞清楚document.getElementById('fruit').value是取输入框的值对吧。。目前没得到结果的时候输入框的值是空的。。而且这个输入框是需要把结果赋值到里面。。变量赋值就是从左到右,d是什么东西? d不就是结果值嘛。。 代码解析出来不就是把算出来的结果值赋进输入框嘛...  照你的写法把输入框赋进这个值。。难道不报错? 是吧。。  要一层层理解。。慢慢来

    阳火锅 回复qq_Tim...

    懂了采纳一下我的答案呀。。

    2018-06-15 11:20:05

    共 6 条回复 >

  • 我只是个bug仔555555
    2018-06-20 22:42:11

    <!DOCTYPE html>

    <html>

     <head>

      <title> 事件</title>  

      <script type="text/javascript">

       function count(){

           

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

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

    //获取选择框的值

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

        //设置结果输入框的值 

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

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

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

        

        switch(opr)

        {

            case "+":

                document.getElementById("fruit").value = n1 + n2;

                break;

            case "-":

                document.getElementById("fruit").value = n1 - n2;

                break;

            case "*":

                document.getElementById("fruit").value = n1 * n2;

                break;    

            case "/":

                document.getElementById("fruit").value = n1 / n2;

                break;            

        }


       }

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


  • 阿旗_健身狂人
    2018-06-15 11:48:03

    你这个还是有问题  首先 加号 除了加法还有字符串连接功能 

    所以 加法会出现 1 + 1 等于 12 情况 

    <!DOCTYPE html>
    <html lang="zh-cmn-Hans">
    <head>
        <meta charset="utf-8" />
        <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
        <title>事件</title>
        <meta name="keywords" content="关键词列表" />
        <meta name="description" content="网页描述" />
        <link rel="stylesheet" type="text/css" href="" />
     <!--<script type="text/javascript" src="JS文件路径"></script>-->
     <script type="text/javascript">
     function count(){
    
                //获取第一个输入框的值
                //获取第二个输入框的值
                //获取选择框的值
                //获取通过下拉框来选择的值来改变加减乘除的运算法则
                //设置结果输入框的值
     var a = Number(document.getElementById("txt1").value); //转换成数字类型
    
     var b = Number(document.getElementById("txt2").value);
    
     var c = document.getElementById("select").value;
    
     var d = '';
    
     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>


    qq_Tim...

    昂这个找出错误的时候改掉了 还是谢谢您~

    2018-06-15 13:50:04

    共 1 条回复 >

  • 阳火锅
    2018-06-15 11:19:35

    我的意思是你的e一开始赋值的是输入框,后面你又把e赋值给了d..此时你的e就不是输入框了。。而是d。。懂了吗。。大兄弟。。

  • qq_Timebegin_0
    2018-06-14 17:01:02

    https://img1.mukewang.com/5b222e940001928b03580064.jpg

    为什么我把21行换成了图片上的就可以运行了

    这两者有什么区别吗

JavaScript进阶篇

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

468061 学习 · 21891 问题

查看课程

相似问题