为了账号安全,请及时绑定邮箱和手机立即绑定
关注
慕标8421383

下拉框是+号时不能进行运算,比如1+2结果框只能给出12;其他的运算符号运算结果正常

<!DOCTYPE html>

<html>

 <head>

  <title> 事件</title>  

  <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 result;

if(c=="+"){

   result=a+b;

}

else if(c=="-"){

   result=a-b;

}

else if(c=="*"){

   result=a*b;

}

else{

   result=a/b;

}

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

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

    //设置结果输入框的值

   }

  </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=' = ' /> <!--通过 = 按钮来调用创建的函数,得到结果--> 

   <input type='text' id='fruit' onclick="count()" />   

 </body>

</html>


2020-01-12 源自:JavaScript进阶篇 6-11 246 浏览 3 回答

 使用parseInt()函数可解析一个字符串,并返回一个整数。

num = parseInt(txt1) - parseInt(txt2);

2020-01-13
回复 0

因为你没有把获取的值由字符串转为number,如果是字符串遇上“+”的话就是拼接的意思,所以会吧1和2拼接在一起

2020-01-15
回复 0

input输入框获取的是字符串

2020-02-06
回复 0

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信