为了账号安全,请及时绑定邮箱和手机立即绑定
关注
湫之恋

编程出现疑问

我在定义的时候定义了f=document.getElementById("fruit").value;,运算结果赋值给b,但是我最后将运算结果显示时,用f=b就没有结果显示,用document.getElementById("fruit").value=b就能显示。

2019-11-10 源自:JavaScript进阶篇 6-11 96 浏览 3 回答

<!DOCTYPE html>

<html>

 <head>

  <title> 事件</title>  

  <script type="text/javascript">

   function count(){

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

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

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

   var f=document.getElementById("fruit").value;

       var d=0;

       switch(b){

           case "+":

               d=parseInt(a)+parseInt(c);

               break;

           case "-":

               d=parseInt(a)-parseInt(c);

               break;

           case "*":

               d=parseInt(a)*parseInt(c);

               break;

           case "/":

               d=parseInt(a)/parseInt(c);

               break;

       }

       f=d;

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

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

//获取选择框的值

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

    //设置结果输入框的值 

    

   }

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


2019-11-10
回复 0

我的理解是:

1、f=document.getElementById("fruit").value;表示将id为"fruit"这个元素的值value赋给f,而不是用"f"来代表这个元素的值,所以f=b不能表示将b的值赋给该元素。你可以将

2、运算结果赋给了b,那么用document.getElementById("fruit").value=b则表示将b的值赋给该元素的value。

3、在你的基础上可以修改为:

var b;   //结果初始值

f=document.getElementById("fruit");//获取元素对象

//结果计算出来之后,将结果值赋给元素对象的value:f.value=b;

2019-11-12
回复 0

f 代表的只是fruit的一个值的拷贝,你修改fruit的拷贝,对fruit没有任何影响,

进行这一步时,document.getElementById("fruit").value=b,修改的fruit的value的值,所以可以成功

2019-11-17
回复 0

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信