<!DOCTYPE html>
<html>
<head>
<title> 事件</title>
<script type="text/javascript">
function count(){
var sum1=document.getElementById('txt1').value;//获取第一个输入框的值
var sum2=document.getElementById('txt2').value;//获取第二个输入框的值
var select=document.getElementById('select').value;//获取选择框的值
var add='';//获取通过下拉框来选择的值来改变加减乘除的运算法则
switch (select)
{
case '+':
add=sum1+sum2;
break;
case '-':
add=sum1-sum2;
break;
case '*':
add=sum1*sum2;
break;
case '/':
add=sum1/sum2;
break;
}
document.getElementById('fruit').value=add;//设置结果输入框的值
}
</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>你知道是int类型,但是他不知道呀 console.log(typeof document.getElementById('txt1').value)
text是string类型
你需要给你的text转型,parseint 转整数类型
var select不可以作为变量名,命名规则规定。
switch(sle){
case '+':
var span = parseFloat(a) + parseFloat(b);
break;
case '-':
var span = parseFloat(a) - parseFloat(b);
break;
case '*':
var span = parseFloat(a) * parseFloat(b);
break;
case '/':
var span = parseFloat(a) / parseFloat(b);
break;
}
把它转成浮点类型就可以了
var sum1=parseInt(document.getElementById("txt1").value);
var sum2=parseInt(document.getElementById("txt2").value);
这样就可以计算整数了,没有错误
但是小数就不知道怎么求了~哭晕
我的也是这个问题~跪求大神