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

我用的是if else语句,为什么不能显示结果啊,哪里出错了,跪求各位大神帮帮忙!!!

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

正在回答

6 回答

function count(){

    //获取第一个输入框的值
        var fir = document.getElementById("txt1").value;   
    //获取第二个输入框的值
        var sec = document.getElementById("txt2").value;   
    //获取选择框的值
        var oselect = document.getElementById("select").value;
    //获取通过下拉框来选择的值来改变加减乘除的运算法则
        var num ;
        function count(x,y){
            if(oselect=="+"){
                num =(x-0) + (y-0);
            }
            else if(oselect=="-"){
                num = (x-0)-(y-0);
            }
            else if(oselect=="*"){
                num = (x-0)*(y-0);
            }
            else if(oselect=="/"){
                num = (x-0)/(y-0);
            }
        }
        count(fir,sec);
    //设置结果输入框的值
        document.getElementById("fruit").value=num;
   }



//我用if写的  你看看

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

<!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 c=document.getElementById("select").value;

    //var num=document.getElmentById("fruit").value;

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

    if(c=="+"){

        document.getElementById("fruit").value=a+b;

    }

    else if(c=="-"){

        document.getElementById("fruit").value=a-b;

    }

    else if(c=="*"){

        document.getElementById("fruit").value=a*b;

    }

    else if(c=="/"){

        document.getElementById("fruit").value=a/b;

    }

    //设置结果输入框的值 

    

   }

   

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



首先你的getElementById拼错,其次你没有对获取的数字加上parseInt()

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

楼上说的有道理,但是如果这样的话一开始的声明就没必要了直接var num;就行了,还有要改的是

var b=document.getElmentById("txt2").value;  //以下三个getElementById 都少了1个e
    var c=document.getElmentById("select").value;
    var num=document.getElmentById("fruit").value;

还有  var a=document.getElementById("txt1").value;  //得来的值是字符型要转换为整型

另外如果想用直接改结果框的内容的话可以这样:

    var num=document.getElementById("fruit");

       a = parseInt(a);  //字符转整型

       b = parseInt(b);

    if(c=="+"){

        num.value = a+b;

    }

    else if(c=="-"){

        num.value=a-b;

    }

    else if(c=="*"){

        num.value=a*b;

    }

    else if(c=="/"){

        num.value=a/b;

    }


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

而且你需要将字符串转化为数字才行的

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

同学,document.write(num);这段代码不是设置结果框中的值,而是在屏幕上打印num的值。这样才对document.getElementById("fruit").value=num

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

慕粉3445928 提问者

好的,谢谢啦!
2016-08-01 回复 有任何疑惑可以回复我~

 i have no way

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

举报

0/150
提交
取消

我用的是if else语句,为什么不能显示结果啊,哪里出错了,跪求各位大神帮帮忙!!!

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