没有运行出结果,求高人指点!

来源:6-11 编程练习

白水向前冲

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回答

  • 闹小志
    2015-01-05 19:16:35

    首先说一下我在你的程序中发现的问题:

    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进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468061 学习 · 21891 问题

查看课程

相似问题