【发布时间】:2014-03-13 03:08:43
【问题描述】:
我在 javascript 中做一个条件语句。当用户在“Collect”输入框输入一个值时,该值与“CurBal”输入框的值进行加法运算,将答案放入名为“Balance”的输入框。
如果用户在“Deposit”输入框中输入一个值,它的值将从“CurBal”中减去,差值也将反映(假设)在“Balance”中
我有这个代码:
var collect = parseFloat(document.getElementById("Collect").value) ||0;
var dep = parseFloat(document.getElementById("Deposit").value) ||0;
var curr = parseFloat(document.getElementById("CurBal").value) ||0;
var bal = document.getElementById("Balance");
if (collect.value = true)
{
bal.value = (collect + curr).toFixed(2)
bal = document.getElementById("Balance");
}
else if (dep.value = true)
{
bal.value = (curr - dep).toFixed(2)
bal = document.getElementById("Balance");
}
HTML:
<tr>
<td> Collections: </td>
<td> <input onchange="addNumbers()" type="text" id="Collect" name="Collect" value="" /> </td>
</tr>
<tr>
<td> Deposits:</td>
<td> <input onchange="addNumbers()" type="text" id="Deposit" name="Deposit" value="" /> </td>
</tr>
<tr>
<td> Current Balance: </td>
<td> <input onchange="addNumbers()" type="text" id="CurBal" name= "CurBal" value="<?php echo $all['balance']; ?>" readonly="readOnly" /> </td>
</tr>
<tr>
<td> Balance: </td>
<td> <input type="text" id="Balance" name="Balance" value="" readonly="readOnly" /> </td>
</tr>
但是,它只是正确地执行了第一个条件。如果我在“存款”输入框中输入了一个值,它不会从“CurBal”中减去该值,它只是从“CurBal”中复制该值。
应该删除、添加或更改哪些内容?谢谢你的帮助
附加信息:用户只能在“收集”或“余额”中输入值。
【问题讨论】:
-
=用于赋值,==或===用于比较。 -
如果我输入“if (collect.value == true)”,输入框“余额”中没有“答案”
-
这可能是因为
collect和dep中都有一个值,而这些值不等于true,所以两个if条件都不满足。尝试将if条件更改为:if (collect.value != 0) -
你想检查什么条件?
-
另外,
curr呢?您正在检查collect文本框是否有值,但您不验证curr文本框是否有值。
标签: javascript if-statement addition subtraction