为什么没有反应呢?

来源:6-11 编程练习

最近的距离是多少3456060

2016-08-07 16:18

function count(){
    var one = document.getElementById("txt1").value;//获取第一个输入框的值
    var two= document.getElementById("txt2").value;    //获取第二个输入框的值
    var three = document.getElementById("select").value;    //获取选择框的值
    var four= "";
    switch(three) {
        case "+":
            four = parseInt(one) + parseInt(two);
            break;
        case "-":
            four= parseInt(one) - parseInt(two);
            break;
        case "*":
            four= parseInt(one) * parseInt(two);
            break;
        case "/"
            four = parseInt(one) / parseInt(two);
        default
        undefined//获取通过下拉框来选择的值来改变加减乘除的运算法则
    }
    document.getElementById("fruit").value = four;//设置结果输入框的值 
    
   }   
   }
  </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' />

为什么没有反应啊

写回答 关注

2回答

  • 兮兮决
    2016-08-07 17:55:39
    已采纳

    function count(){

        var one = document.getElementById("txt1").value;//获取第一个输入框的值

        var two= document.getElementById("txt2").value;    //获取第二个输入框的值

        var three = document.getElementById("select").value;    //获取选择框的值

        var four= "";

        switch(three) {

            case "+":

                four=parseInt(one)+parseInt(two);

                break;

            case "-":

                four=parseInt(one)-parseInt(two);

                break;

            case "*":

                four=parseInt(one)*parseInt(two);

                break;

            case "/":      //导致运行没有效果的错误之一:这里没写冒号!

                four=parseInt(one)/parseInt(two);

    break;

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

       default:           //导致运行没有效果的错误之二:这里没写冒号!

            undefined;      //规范这里要写分号,不写不影响效果。

        }

        document.getElementById("fruit").value = four;//设置结果输入框的值 

         

       }   

     //导致运行没有效果的错误之三:这里多出了一个大括号!

    最近的距离是... 回复teresa...

    case "+": four = parseInt(one) + parseInt(two); break; 不是已经加了吗?

    2016-08-09 10:31:22

    共 4 条回复 >

  • teresahy3144593
    2016-08-07 16:46:55
    1. 你一开始不要给four赋空值,而且你那样定义,four是字符串类型;

    2. switch语句里,default直接可以是”/“,即一共就四则运算四个判断;

    3. 你可以在一开始取值的时候进行类型转换,而不是在switch语句中进行计算时才转换。

    最近的距离是...

    谢谢。你这3个意见可以少了很多代码...

    2016-08-08 10:42:22

    共 1 条回复 >

JavaScript进阶篇

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

468061 学习 · 21891 问题

查看课程

相似问题