白水向前冲
2015-01-05 18:34
<!DOCTYPE html>
<html>
<head>
<title> 事件</title>
<script type="text/javascript">
function count(){
var a,b,sel,result
//获取第一个输入框的值
a=document.getElementById(txt1).value;
//获取第二个输入框的值
b=document.getElementById(txt2).value;
//获取选择框的值
sel=document.getElementById(select).value;
//获取通过下拉框来选择的值来改变加减乘除的运算法则
switch(sel){
case "+":
result=a+b;
break;
case "-":
result=a-b;
break;
case "*":
result=a*b;
break;
default
if (b!=0){
result=a/b;
}
else{
alert("分母不能为零!");
}
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、将你的代码运行,浏览器会报错,提示你if在此处的用法不妥。
2、javascript代码中所有的document.getElementById()中的id你都没有写双引号,当id是变量的时候才可以不写引号。
3、当修正了以上两个问题之后,我1+2运行的结果是12。这是第三个问题,输入框获取的值是字符串,需要你将字符串儿转成数字。
以下是我修正之后的代码:
<!DOCTYPE html>
<html>
<head>
<title>事件</title>
<script type="text/javascript">
function count(){
var a,b,sel,result
//获取第一个输入框的值
a=parseInt(document.getElementById("txt1").value);
//获取第二个输入框的值
b=parseInt(document.getElementById("txt2").value);
//获取选择框的值
sel=document.getElementById("select").value;
//获取通过下拉框来选择的值来改变加减乘除的运算法则
switch(sel){
case "+":
result=a+b;
break;
case "-":
result=a-b;
break;
case "*":
result=a*b;
break;
case "/":
if (b!=0){
result=a/b;
}
else{
alert("分母不能为零!");
};
}
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>仅代表我个人看法,希望能帮到你!
JavaScript进阶篇
469062 学习 · 22582 问题
相似问题
回答 2
回答 3
回答 2
回答 3
回答 2