问答详情
源自:6-11 编程练习

有什么地方错了呢?奇怪。看了半天。

<!DOCTYPE html>
<html>
 <head>
  <title> 事件</title>  
  <script type="text/javascript">
   function count(){
       var text1 = document.getElementById("text1").value;
       var text2 = document.getElementById("text2").value;
       var select = document.getElementById("select").value;
       var fruit='';
       switch (select){
           case "+":
            fruit = text1 + text2;
            break;
           case "-":
            fruit = text1 - text2;
            break;
            case "*":
            fruit = text1 * text2;
            break;
            case "/":
            fruit = text1 / text2;
            break;
            default;
       }
        document.getElementById("fruit").value = fruit;
   }
  </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>


提问者:世界和平ad 2015-04-04 16:17

个回答

  • _潇潇暮雨
    2015-04-04 18:32:17
    已采纳

    代码有以下问题:

    1. 7、8的getElementById传入的id错了

    2. default后面是冒号;

    3. 通过id获得的值需要转化成整型。

    完整的代码:

    <!DOCTYPE html>
    <html>
     <head>
      <title> 事件</title>  
      <script type="text/javascript">
       function count(){
           var text1 = parseInt(document.getElementById("text1").value);//id错了,需要转化成数值类型
           var text2 = parseInt(document.getElementById("text2").value);
           var select = document.getElementById("select").value;
           var fruit='';
           switch (select){
               case "+":
                fruit = text1 + text2;
                break;
               case "-":
                fruit = text1 - text2;
                break;
                case "*":
                fruit = text1 * text2;
                break;
                case "/":
                fruit = text1 / text2;
                break;
                default: //default后面是冒号
                break;
    
           }
            document.getElementById("fruit").value = fruit;
       }
      </script> 
     </head> 
     <body>
       <input type='text' id='text1' /> 
       <select id='select'>
            <option value='+'>+</option>
            <option value="-">-</option>
            <option value="*">*</option>
            <option value="/">/</option>
       </select>
       <input type='text' id='text2' /> 
       <input type='button' value=' = ' onclick="count();"/> <!--通过 = 按钮来调用创建的函数,得到结果--> 
       <input type='text' id='fruit' />   
     </body>
    </html>


  • 世界和平ad
    2015-04-04 20:11:36

    终于是对了。

    <!DOCTYPE html>
    <html>
     <head>
      <title> 事件</title>  
      <script type="text/javascript">
       function count(){
      var txt1 = parseInt(document.getElementById("txt1").value);
      var txt2 = parseInt(document.getElementById("txt2").value);
      var select = document.getElementById("select").value;
      var fruit;
      switch (select){
          case "+":
            fruit = txt1 + txt2;
            break;
            case "-":
            fruit = txt1 - txt2;
            break;
            case "*":
            fruit = txt1 * txt2;
            break;
            case "/":
            fruit = txt1 / txt2;
            break;
            default:
      }
      document.getElementById("fruit").value = fruit;
       }
      </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=' = ' onmouseover="count()"/> <!--通过 = 按钮来调用创建的函数,得到结果--> 
       <input type='text' id='fruit' />   
     </body>
    </html>