慕标3054860
2016-05-26 21:43
<!DOCTYPE html>
<html>
<head>
<title> 事件</title>
<script type="text/javascript">
function count(){
var select = document.getElementById('select').value;
var a=document.getElementById('txt1').value;
var b=document.getElementById('txt2').value;
var c=document.getElementById('fruit').value;
switch (select)
{
case "+": c=a+b;
case "-": c=a-b;
case "*": c=a*b;
case "/": c=a/b;
break;
}
document.getElementById('fruit').value =c;
}
</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>
事件<!DOCTYPE html>
<html>
<head>
<title> 事件</title>
<script type="text/javascript">
function count(){
var select = document.getElementById("select").value;
var a= parseInt(document.getElementById("txt1").value);
var b= parseInt(document.getElementById("txt2").value);
//var c= document.getElementById("fruit").value;
switch (select)
{
case "+": c=a+b;break;
case "-": c=a-b;break;
case "*": c=a*b;break;
case "/": c=a/b;break;
}
document.getElementById("fruit").value =c;
}
</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>
两个问题,首先a和b都是后面进行的是数值的加减乘除,而你在输入框输入之后,通过value获得到的是字符串,所以你要使用parseInt转换成数字,比如var a=parseInt(document.getElementById('txt1').value);b也是一样的,然后还有就是switch里面的没一个case后面都应该有个break,而不是所有的完了之后才有break,按照你这样的写法,所有的c的结果都是a除以b
可以运行啊
JavaScript进阶篇
468060 学习 · 21891 问题
相似问题