为什么位置不同,得到的结果也不同呢?

来源:6-11 编程练习

Wo_o明

2016-01-20 17:01

<!DOCTYPE html>

<html>

 <head>

  <title> 事件</title>  

  <script type="text/javascript">

   function count(){

    var a=document.getElementById("txt1").value;

    var b=document.getElementById("txt2").value;

    var c="";

    var d=document.getElementById("select").value;

    switch(d)

    {

        case "+":c=parseInt(a)+parseInt(b);break;

        case "-":c=a-b;break;

        case "*":c=a*b;break;

        default :c=a/b;break;

    }

    document.getElementById("fruit").value = c;

    //获取第一个输入框的值

//获取第二个输入框的值

//获取选择框的值

//获取通过下拉框来选择的值来改变加减乘除的运算法则

    //设置结果输入框的值 

    

   }

  </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>

这是正确的计算加减法的正确函数。但是若我把之前定义好的变量C给换到document.getElementById("fruit").value后边,也就是写成document.getElementById("fruit").value = var c;在计算结果的时候,就只是把两个数给连在了一起,“+”在里面并没有起到累加的作用,而只是一个连接的作用。这是为什么呢?

写回答 关注

2回答

  • Anikkilf
    2016-01-20 17:36:31
    已采纳

    如果把document.getElementById("fruit").value = c;写成document.getElementById("fruit").value = var c;运行不会出结果。因为c的值未定义

    变量必须先定义再使用。

    Wo_o明

    非常感谢!

    2016-01-27 17:54:34

    共 1 条回复 >

  • 宇xixi
    2016-01-20 18:06:59

    楼上正解

JavaScript进阶篇

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

468061 学习 · 21891 问题

查看课程

相似问题