javascript - js中给value赋值的问题
本文介绍了javascript - js中给value赋值的问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
<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' />
<script type="text/javascript">
function count(){
var num1 = document.getElementById("txt1").value;
var num2 = document.getElementById("txt2").value;
var cal = document.getElementById("select").value;
var sou = document.getElementById("fruit").value;
var countNum;
switch(cal){
case '+':
countNum = parseInt(num1) + parseInt(num2);
break;
case '-':
countNum = parseInt(num1) - parseInt(num2);
break;
case '*':
countNum = parseInt(num1) * parseInt(num2);
break;
case '/':
countNum = parseInt(num1) / parseInt(num2);
break;
}
sou = countNum;
}
</script>
</body>
我写了个简易计算器,先获取前面两个输入框的值,算完以后在输入给第三个框,
如果我先获取第三个框的value,然后再赋值就不起作用
var sou = document.getElementById("fruit").value
sou = countNum;
必须写成这样
var sou = document.getElementById("fruit");
sou.value = countNum;
请问这是怎么回事?
解决方案
当你这样写
var sou = document.getElementById("fruit").value
是在变量sou赋值,那么你上面的代码,其实改变的是变量sou的值
var sou = document.getElementById("fruit");
sou.value = countNum;
当你这样写的时候你是input这个dom元素赋给了sou变量,这个时候
sou.value = countNum
改变的就是input的value,
不知道明白没。。。
还有注意拼写哦
这篇关于javascript - js中给value赋值的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文