这是我的代码:

<script src="js/jquery.js" type="text/javascript"></script>
<script src="js/jquery.field.js" type="text/javascript"></script>
<script src="js/jquery.calculation.js" type="text/javascript"></script>
<script>

$(function() {
      $('input[name^=sum]').keyup(function() {
            var sum1 = parseFloat($('input[name=sum1]').val());
            var sum2 = parseFloat($('input[name=sum2]').val());
    var sum3 = parseFloat($('input[name=sum3]').val());


            $('#c_card_amount').val(sum1*sum3/100);
    $('#total_inc_charges').val((sum1*sum3/100)+sum1);
    });
});

</script>


我的问题:


如果sum1中没有值,则c_card_amounttotal_inc_chargesNaN。如何在其中输入条件,说明如果sum1中没有值,则在total_inc_charges中仅显示0。我已经读过有关此内容的信息,但无法根据我的代码找出答案。
我的第二个问题是:例如,如何显示1,000.00格式的数字?

最佳答案

使用短路操作器。如果parseFloat() == NaN的结果,则该值将设置为零。

var sum1 = parseFloat($('input[name=sum1]').val()) || 0;
var sum2 = parseFloat($('input[name=sum2]').val()) || 0;
var sum3 = parseFloat($('input[name=sum3]').val()) || 0;


附加信息:

MDN Expressions and Operators

关于javascript - jQuery计算-NaN和格式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8446068/

10-16 00:11