<!DOCTYPE html>
<html>
<head>
<title>计算器</title>
<script type="text/javascript">
function count(){
//获取第一个输入框的值
var first=document.getElementById('txt1').value;
//获取第二个输入框的值
var second=document.getElementById('txt2').value;
//获取选择框的值
var select1=document.getElementById('select').value;
//获取通过下拉框来选择的值来改变加减乘除的运算法则
//设置结果输入框的值
var val;
switch (select1)
{
case '+' :
val=first + second;break;
case '-' :
val=first - second;break;
case '*' :
val=first * second;break;
case '/' :
val=first / second;break;
}
document.getElementById('fruit').value=val;
}
</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>
2 回答
已采纳
追梦人_dreamer
TA贡献1条经验 获得超4个赞
使用parseFloat()函数进行强制类型转换,将输入框里的值转换为浮点数就可以进行相加。val=parseFloat(first)+parseFloat(second);试试看。
qq_大寒_2
TA贡献173条经验 获得超185个赞
JS运算碰到加法运算默认是字符串类型的,其他-,*,/默认是number类型,自己可以弹弹试试看。优先级就是碰到string和number,string优先。
alert((first+second-first)); //运算过程 '1'+'2'='12',12-1=11 alert(typeof (first+second-first)); alert(typeof (first-second)); alert(typeof (first*second)); alert(typeof (first/second)); document.getElementById('fruit').value=val; }
添加回答
举报
0/150
提交
取消