<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= "";
switch(c)
{
case"+":
result = parseFloat(a) + parseFloat(b);
break;
case"-":
result = parseInt(a) - parseInt(b);
break;
case"*":
result = parseFloat(a) * parseFloat(b);
break;
case"/":
result = parseInt(a) / parseInt(b);
break;
}
document.getElementById("fruit").value =result;
}
</script>
为什么上面这行代码 document.getElementById("fruit").value =result; 一定要放在以上那个位置才能运行成功,放在其他行就不行了呢,求解??????
因为document.getElementById("fruit")返回值是一个对象(复合类型数据,而非值类型数据),而最终的正常显示操作即是对该对象的属性进行赋值。以上代码也可以这样测试:
var fruit = document.getElementById("fruit");//此段代码可以放置在任意位置(当然要在fruit调用之前)
fruit.value = result;//此段代码放置在最后