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

为什么没有结果呢?在没有加上parselnt时还能显示字符串相加,加上之后什么运算都有做不了???求帮助??

<!DOCTYPE html>

<html>

 <head>

  <title> 事件</title>  

  <script type="text/javascript">

   function count(){

       

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

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

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

    var a;

    if(z='+'){a=x+y;}

    else if(z='-'){a=x-y;}

    else if(z='*'){a=x*y;}

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

    else {a=x/y;}

    //设置结果输入框的值 

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

   }

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


正在回答

4 回答

遇到很多情况,可以用switch:

function count(){
    var num1=parseFloat(document.getElementById("txt1").value);
    var num2=parseFloat(document.getElementById("txt2").value);
    var result=document.getElementById("fruit");
    var op=document.getElementById("select").value;
    switch(op){
        case'+':result.value=num1+num2;break;
        case'-':result.value=num1-num2;break;
        case'*':result.value=num1*num2;break;
        case'/':result.value=num1/num2;break;
}


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

另:当变量的值是确定的某些值,应该用switch来进行判断分支。if...else嵌套语句实用性强,但容易使代码混乱,可读性差。

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

你菜还是你菜

对症下药
2016-10-09 回复 有任何疑惑可以回复我~

parseInt中I是i的大写,不是L。

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

找出错误了:1.函数名写错parseInt应该是大写的I(i),而不是小写的l(L).没有见过这个函数,所以套用的,当时               奇怪为什么没有高亮。

                    2.if...else 为多重判断函数,语法应该为if(z=='+'),是一个判断条件,而不应该为赋值条件。


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

举报

0/150
提交
取消

为什么没有结果呢?在没有加上parselnt时还能显示字符串相加,加上之后什么运算都有做不了???求帮助??

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号