JQuery toFixed()无法正确显示

时间:2014-10-10 00:24:45

标签: javascript jquery

所以我有一组这样的数字:

<select name="amount" id="amount" class="form-control">
        <option selected="selected" disabled="disabled">Donation Amount</option>
        <option value="500">$5.00</option>
        <option value="1000">$10.00</option>
        <option value="1500">$15.00</option>
        <option value="2000">$20.00</option>
        <option value="2500">$25.00</option>
        <option value="3000">$30.00</option>
        <option value="3500">$35.00</option>
        <option value="4000">$40.00</option>
        <option value="4500">$45.00</option>
        <option value="5000">$50.00</option>
        <option value="5500">$55.00</option>
        <option value="6000">$60.00</option>
        <option value="6500">$65.00</option>
        <option value="7000">$70.00</option>
        <option value="7500">$75.00</option>
        <option value="8000">$80.00</option>
        <option value="8500">$85.00</option>
        <option value="9000">$90.00</option>
        <option value="9500">$95.00</option>
        <option value="10000">$100.00</option>
</select>

每次更改都会运行一些javascript:

<script type="text/javascript">
   $("#amount").change(function(){
      var amount = parseInt($("#amount option:selected").val());
      var amount = amount.toFixed(2);
      $(".amountShow").text('$'+amount);
   });
</script>

现在几乎可以了。除了toFixed(2)部分之外。假设我们选择10.00。值为1000,我想显示10.00。它显示如下:1000.00。

我还需要做什么?我将文本转换为整数,然后将其固定为两位小数。

1 个答案:

答案 0 :(得分:0)

您必须将选项的值除以100,如:http://jsfiddle.net/csdtesting/14rh32ou/

$("#amount").change(function () {
    var amount = parseInt($("#amount option:selected").val()) / 100;
    var amount = amount.toFixed(2)
    $(".amountShow").text('$' + amount);

});