慕先生5247145
2018-07-25 17:51
<!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 d=""
switch(c){
case'+':
d=parseInt(a)+parseInt(b);
break;
case'-':
d=parseInt(a)-parseInt(b);;
break;
case'*':
d=parseInt(a)*parseInt(b);;
break;
case'/':
d=parseInt(a)/parseInt(b);;
break;
}
//获取通过下拉框来选择的值来改变加减乘除的运算法则
document.getElementById("fruit").value=d
//设置结果输入框的值
}
</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>
算术符中有“+、-、*、/”等,然而“+”同时也属于操作符,例如:mystring="Java"+"script"。如果你直接用d=a+b,那么界面计算器显示的结果就是ab(操作符之间的逻辑关系中:算术符<操作符),所以要带上parseInt(意思是将字串符转为整数),表示此处用做算术符。后面的“-,*,/”是单纯的算术符,是可以不带parseInt(不带的话,页面计算器中某些运行的结果就不能化整,例如:1/3=0.3333333.....)。任务中要求带parseInt,你还是带一下比较好!麻烦采纳一下,毕竟辛辛苦苦打了这么多字,哈哈^_^!
直接封装成一个函数了吧,不然按你的描述,后续的case执行会有问题的
JavaScript进阶篇
468060 学习 · 21891 问题
相似问题