<!DOCTYPE html> <html> <head> <title> 事件</title> <script type="text/javascript"> function count(){ var num1=parseInt(document.getElementById("txt1").value); //获取第一个输入框的值 var num2=parseInt(document.getElementById("txt2").value); //获取第二个输入框的值 var cul=parseInt(document.getElementById("select").value); //获取选择框的值 //获取通过下拉框来选择的值来改变加减乘除的运算法则 //设置结果输入框的值 var result=""; switch(cul){ case '+': result=num1+num2;break; case '-': result=num1-num2;break; case '*': result=num1*num2;break; case '/': result=num1/num2;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>
这个代码不知道哪里出问题了额。。。
有一个事件绑定语法错误,和一个逻辑错误。具体错误地点如下加粗部分
35 <input type='button' value=' = ' onclick=count()/>
11 var cul=parseInt(document.getElementById("select").value);
分析
35行,事件绑定语法书写错误,变更为'count()'
11行,去掉加粗代码,此处要获取的是运算字符,而非数字。
<!DOCTYPE html> <html> <head> <title> 事件</title> <script type="text/javascript"> function count(){ var num1=parseInt(document.getElementById("txt1").value); //获取第一个输入框的值 var num2=parseInt(document.getElementById("txt2").value); //获取第二个输入框的值 var cul=document.getElementById("select").value; //获取选择框的值 //获取通过下拉框来选择的值来改变加减乘除的运算法则 //设置结果输入框的值 var result=""; switch(cul){ case '+': result=num1+num2;break; case '-': result=num1-num2;break; case '*': result=num1*num2;break; case '/': result=num1/num2;break; } debugger 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>
两个问题,分别在你的代码的11行和35行。