qq_LittleKun_0
2018-07-03 14:31
<!DOCTYPE html>
<html>
<head>
<title> 事件</title>
<script type="text/javascript">
function count(){
var x = document.getElementById("txt1").value
var y = document.getElementById("txt2").value
var h= document.getElementById("select").value
// var z = document.getElementById("fruit").value
switch (h){
case "+" :
var result = x+y ;
break;
case "-":
var result = x-y;
break;
case "*":
var result = x * y;
break;
case "/":
var result = x / y ;
break;
}
document.getElementById("fruit").value=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>
数学算法你这样写直接是错误的,因为你现在的加法相加时两个字符串的合并,比如“1+1”结果是11,而不是数学运算,如果想要输入的是可用于运算的数字时,用parseInt进行强制类型转换,如果你输入的数字中包含小数,要用parseFloat进行转换,
这里正确的写法应该是
var result=parseInt(x)+parseInt(y);
或者:
var result=parseFloat(x)+parseFloat(y);
document.getElementById("fruit").value=result; 这句话为什么不能提到前面。var z = document.getElementById("fruit").value
JavaScript进阶篇
468061 学习 · 21891 问题
相似问题