添加两个变量后Javascript无法正常运行

Ank*_*kur 0 javascript

好的,我有这些输入框.

<input 
   type="text" 
   name="amount" 
   class="validate[required] text-input" 
   id="amount">

<input type="text" 
       name="incfee" 
       id="incfee" 
       readonly>
Run Code Online (Sandbox Code Playgroud)

这是我的javascript: -

  <script type="text/javascript">
     window.onload = function() {
        var amount = document.getElementById('amount');
        var incfee = document.getElementById('incfee');

        var fee = 0.01;

        amount.onkeyup = function() {
           var result = parseFloat(amount.value) * fee;
           // var result1 = result + amount;
           incfee.value = !isNaN(result) ? result : '';
        };
     }
  </script>
Run Code Online (Sandbox Code Playgroud)

现在,问题是,如果我评论该行"var result1 = result + amount;"并将result1重命名为导致incfee.value,则文本框的值(包括费用的金额)会随着金额的值而变化,一切正常.但是,如果我取消注释该行var result1 = result + amount;并将结果更改为incfee.value中的结果1 ,则javascript不起作用,并且在incfee文本框中不会填充任何值.我做错了什么?谢谢.

NaC*_*aCl 8

var result1 = result + parseFloat(amount.value);

Javacript不知道如何添加float和input-object.

  • 它实际上确实如此,但结果可能会令人惊讶. (4认同)
  • 可能想要将这两行简化为`var result1 = amount.value*(1 + fee);`并跳过中间步骤(以及所有`parseFloat`s. (4认同)
  • 不要忘记转换该值,否则您将获得字符串连接. (2认同)