<!DOCTYPE html>
<html>
<head>
<title> 事件</title>
<script type="text/javascript">
function count(){
//获取第一个输入框的值
//获取第二个输入框的值
//获取选择框的值
//获取通过下拉框来选择的值来改变加减乘除的运算法则
//设置结果输入框的值
var txt1=parseFloat(document.getElementById("txt1").value);
var txt2=parseFloat(document.getElementById("txt2").value);
var Select=document.getElementById("select").value;
var result;
var fruit=document.getElementById("fruit").value;//为什么这里这样写后,下面的fruit=result不会来了
switch(Select){
case "+":
result=txt1+txt2;
break;
case "-":
result=txt1-txt2;
break;
case "*":
result=txt1*txt2;
break;
case "/":
result=txt1/txt2;
break;
default:
}
fruit=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=' = ' onclick="count()" /> <!--通过 = 按钮来调用创建的函数,得到结果-->
<input type='text' id='fruit' />
</body>
</html>
第17行: var fruit=document.getElementById("fruit").value; 改成 var fruit=document.getElementById("fruit")
第35行: fruit=result; 改成 fruit.value=result;
就好了,好像是不能直接var一个变量,并且赋值给这个变量一个对象的属性,.我猜你之前的写法应该直接把value的数值赋给了fruit,而不是把value属性赋给fruit, 导致后面的错误.
也可以不定义fruit,直接写成 document.getElementById('fruit').value=result;
fruit=result,这样写result=fruit