多次更改和添加

时间:2014-07-08 03:11:17

标签: javascript html

我正在创建一个页面,其中有人可以通过输入各种值来计算其净值。如果没有添加小数点,输入文本将在之后显示.00。我在获取所有值的总和时遇到了麻烦。

爪哇:

<script type="text/javascript"><!--
function updatesum() {
document.form.TotalAssets.value = (document.form.CashOnHand.value -0) + (document.form.CashInChecking.value -0);
}
//-->
</script>

HTML:

         <input type="text" onblur="if(this.value.indexOf('.')==-1)this.value=this.value+'.00'" onchange="format(this); updatesum()" onkeyup="format(this)" maxlength="11" value="0" name="CashOnHand" /></td>
      </tr>
      <tr>
        <td><strong>Cash in Checking</strong></td>
        <td>$
          <input type="text"
onblur="if(this.value.indexOf('.')==-1)this.value=this.value+'.00'" onchange="format(this); updatesum()" onkeyup="format(this)" maxlength="11" value="0" name="CashInChecking" /></td>
      </tr>

      <tr>
        <td align="right"><strong>Total Assets</strong></td>
        <td>$<input name="TotalAssets" readonly ></td>
      </tr>

它没有给我一些我正在添加的值。

1 个答案:

答案 0 :(得分:0)

我认为这是因为document.form未定义,但这个有效:

function updatesum() {
  var hand = parseFloat(document.forms[0].CashOnHand.value);
  var checking = parseFloat(document.forms[0].CashInChecking.value);
  document.forms[0].TotalAssets.value = hand - checking;
}