慕粉3582820
2016-07-05 08:54
<!DOCTYPE html>
<html>
<head>
<title> 事件</title>
<script type="text/javascript">
function count(){
var a,b,c,d;
a=parseInt(document.getElementById(txt1).value);
//获取第一个输入框的值
b=parseInt(document.getElementById(txt2).value);
//获取第二个输入框的值
c=document.getElementById(select).value;
//获取选择框的值
switch (c)
{case +:d=a+b break;
case -:d=a-b break;
case *:d=a*b break;
default d=a/b}
//获取通过下拉框来选择的值来改变加减乘除的运算法则
document.getElementById("fruit").value = parseInt(d);
//设置结果输入框的值
}
</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>
有5个错误 1 a=parseInt(document.getElementById(txt1).value); 应写成 a=document.getElementById("txt1").value; b句也改成这样的样式 txt1 txt2 需加双引号 2 + - * / 得加双引号 3 d=a+b 这四句后面得加 分号 4 d=a+b 这四个表达式写错了 你输入的a和b都是字符串 需要parseInt()进行解析,再由它返还一个整数 所以 d=parseInt(a)+parseInt(b) 5 document.getElementById("fruit").value = parseInt(d); 这句应该写成 document.getElementById("fruit").value = d;
这个是其它同学的代码
<!DOCTYPE html>
<html>
<head>
<title> 事件</title>
<script type="text/javascript">
function count(){
var d = "";
var a=document.getElementById("txt1").value;
//获取第一个输入框的值
var b=document.getElementById("txt2").value;
//获取第二个输入框的值
var c=document.getElementById("select").value;
//获取选择框的值
switch(c)
{
case "+":
//d = a + b;
d = parseInt(a)+parseInt(b);
break;
case "-":
d = a-b;
break;
case "*":
d = a*b;
break;
default:
d = a/b;
}
document.getElementById("fruit").value = d;
}
</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>
case +:d=a+b break;1.+用“”包含。2.分成两个语句3.加法要用parseInt函数,别的可以不用
+-*/要用引号括起来
JavaScript进阶篇
468191 学习 · 21891 问题
相似问题