问答详情
源自:6-11 编程练习

我也根据评论改了很多次,但点了等号还是运行不了?求各位解答下!

<!DOCTYPE html>

<html>

 <head>

  <title> 事件</title>  

  <script type="text/javascript">

   function count(){

       

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

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

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

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

//获取选择框的值

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

var r="";

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

switch(c3){

case "+" :  r=c1+c2;

            break;

case "-" :  r=c1-c2;

            break;

case "*" :  r=c1*c2;

            break;

default  :  r=c1/c2;

}

    //设置结果输入框的值 

   }

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

  </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_Passenger_10 2018-12-22 14:28

个回答

  • robotZSJ
    2018-12-22 15:33:28
    已采纳

    你好,输出结果的语句,

    function count(){

    .....

    }

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

    这句是在count函数之外写的,你的

                                    r

    是在函数里面定义的,所以

                                     r

    在你的这个句子中是没有被定义的,

    这里牵扯到了变量的作用域,

    你可以自己百度一下。

    你可以在函数外面设置这个变量,让它成为全局变量;

    或者将

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

    移入变量的作用域。

    也可以在拷到本地自己调试,加油

                               

  • qq_慕后端8427513
    2019-01-07 23:41:24

    我把这个拷贝后运行,为什么只有加法运行不正确这是什么原因?