慕粉1946435864
2017-03-30 10:12
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> 事件</title> <script type="text/javascript"> function count(){ //获取第一个输入框的值 var x=parseInt(document.getElementById('txt1').value); //获取第二个输入框的值 var y=parseInt(document.getElementById('txt2').value); //获取选择框的值 var m=document.getElementById('select').value; //获取通过下拉框来选择的值来改变加减乘除的运算法则 if ("+") { abc=x+y; } else if ("-") { abc=x-y; } else if ("*") { abc=x*y; } else{ abc=x/y; } //设置结果输入框的值 document.getElementById('fruit').value=abc; } </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>
//因为你if()括号里“+”“-”“*”“/”没有办法判断真假,所以就不执行if中的语句。你可以这样写
if(m == "+"){
}else if(m == "-"){
}else if(m == "*"){
}else{
}
if...else,我暂时还没有检查出是什么问题导致结果只有加法,咩有其它的,你可以有switch语句试一下:
switch(m){
case'+': //case后面是冒号,切记不能是分号
abc=x+y;
break;
case'-':
abc=x-y;
break;
case'*':
abc=x*y;
break;
case'/':
abc=x/y;
break;
}
JavaScript进阶篇
468060 学习 · 21891 问题
相似问题