在jquery中简单计算整数和十进制数

时间:2009-12-23 10:46:09

标签: javascript jquery

尝试乘以2个值。数量为整数,信用价格为十进制数。当我运行此代码时没有任何反应。

有谁知道这是什么问题?

谢谢。

 $(function(){ // bind the recalc function to the quantity fields

    $("#oneCreditSum").after('<label></label>Total: Aud <span id=\"total\"></span><br><br>');

    $("#quantity").bind('keyup', recalc);

    function recalc(){
        var quantity = $('#quantity').val();
        var creditPrice = $('#creditPrice').val();
        var total = quantity * creditPrice;
        $("#total").text(total);
    }});

3 个答案:

答案 0 :(得分:4)

使用

<强> parseFloat

在计算两个数字之前解析字符串参数并返回浮点数。

var quantity = $('#quantity').val();
var creditPrice = $('#creditPrice').val();
var total = parseFloat(quantity) * parseFloat(creditPrice);

答案 1 :(得分:4)

对值使用parseFloat,并分别提醒每个人进行测试。

其他一些(不相关的)改进:

  1. 使用keyup()函数:

    $("#quantity").keyup(recalc);
    
  2. 让函数匿名:

    $("#quantity").keyup(function(){...});
    
  3. 在函数的#quantity上使用$(this)以避免再次调用jQuery选择器

  4. 您还可以考虑将其缩减为一行代码:

        $("#total").text(parseFloat($('#quantity').val()) * parseFloat($('#creditPrice').val()));
    

    要进行零填充,您可以尝试使用toFixed():

    var num = 10;
    var result = num.toFixed(2); // result will equal 10.00
    

    我从以下网站获得了此片段

    http://www.mredkj.com/javascript/numberFormat.html

    希望这有帮助。

答案 2 :(得分:0)

如果您只对整数感兴趣,可以使用此功能:

parseInt