2个一起添加的字段不添加我的小数位数

时间:2016-02-26 11:03:55

标签: javascript jquery

我有一个网页,我在这个页面上有一个下拉列表和3个字段:

  1. 付款方式
  2. 金额
  3. 总金额
  4. 我的'金额'字段是可编辑的,我的费用是'字段从我的web.config文件中读取一个值,因为根据从下拉列表中选择的选项,有两种不同的费用。

    但我的' Total'字段似乎没有添加到我的小数位,我需要它,这两个字段都设置为$FileDir$.min.js

    我的所有代码都在

    之下

    的Web.config

    type="number"

    查看

    <!-- BACS Fee -->
    <add key="BacsFee" value="25.00" />
    <!-- Chaps Fee -->
    <add key="ChapsFee" value="50.00" />
    

    JQuery的

    <div class="form-group">
         <label class="col-sm-offset-1 col-sm-4 control-label">Payment method</label>
         <div class="col-sm-4"><%: Html.DropDownList("PaymentMethod_DropDownList", paymentMethods, new { @class = "form-control", @onchange = "showModal(ChapsModal)" } )%></div>
    </div>
    <div class="form-group">
         <label class="col-sm-offset-1 col-sm-4 control-label">Amount</label>
         <div class="col-sm-4"><%:Html.PrefixedTextBox("£", "OneOffPayment_Textbox", oneOffDefault, new { })%></div>
         <div class="col-sm-offset-5 col-sm-7" id="OneOffPaymentValidation"><%:Html.ValidationMessage("OneOffPayment_Textbox")%></div>
    </div>
    <div class="form-group">
         <label class="col-sm-offset-1 col-sm-4 control-label">Fee</label>    
         <div class="col-sm-4">
              <div class="input-group">
                   <span class="input-group-addon">£</span>
                   <div id="BacsFee">
                        <input id="BacsFee_Textbox" type="number" class="form-control" value="<%= BacsFee %>" disabled>
                   </div>
                   <div id="ChapsFee">
                        <input id="ChapsFee_Textbox" type="number" class="form-control" value="<%= ChapsFee %>" disabled>
                   </div>
              </div>
         </div>
    </div>
    <div class="form-group">
         <label class="col-sm-offset-1 col-sm-4 control-label">Total amount</label>
         <div class="col-sm-4"><%:Html.PrefixedTextBoxWithId("£", "TotalAmount_Textbox", "TotalAmount_Textbox", "", new { }, true)%></div>
    </div>
    

2 个答案:

答案 0 :(得分:2)

问题是因为您将提供的值解析为没有浮点的整数。请改用parseFloat()

$("#OneOffPayment_Textbox").keyup(function() {
    var val1 = parseFloat($("#OneOffPayment_Textbox").val());
    var val2 = parseFloat($("#BacsFee_Textbox").val());
    $("#TotalAmount_Textbox").val(val1 + val2);
});

如果您要求将结果四舍五入到小数点后两位,请使用toFixed(2)

$("#TotalAmount_Textbox").val((val1 + val2).toFixed(2));

答案 1 :(得分:0)

使用parseFloat作为小数,如parseFloat($("#OneOffPayment_Textbox").val());

  

parseFloat()函数解析字符串参数并返回浮点数。