计算总计时获取NaN

时间:2017-12-26 10:30:25

标签: jquery product invoice calculated-field

我正在尝试用数量计算产品价格然后显示总数但是当我计算时我得到结果为NaN

这是代码

$('button').click(function() {
   var total = 0;

   $('#mineraltable tbody tr').each(function(index) {

      var price = parseInt($(this).find('.price').text());
      var quantity = parseInt($(this).find('.quantity input').val());
      var value = $(this).find('.value');
      var subTotal = price * quantity;

      value.text(subTotal);
      total = total + subTotal;
   });

   $('#result').text('Your value is: '+ total);
      console.log(total);
   });

你的价值是:NaN

2 个答案:

答案 0 :(得分:0)

如果您不确定这些字段中可能存在的数据,可以使用IsNaN()并检查文本是否为数字。

$('button').click(function() {
                  var total = 0;

                  $('#mineraltable tbody tr').each(function(index) {
                  var price = 0 , quantity = 0;

                  price = parseInt($(this).find('.price').text());
                  quantity = parseInt($(this).find('.quantity input').val());

                 //check for NaN
                  price = isNaN(price) ? 0 : price;
                  quantity = isNaN(quantity) ? 0 : quantity;

                  var value = $(this).find('.value');
                  var subTotal = price * quantity;

                  value.text(subTotal);
                  total = total + subTotal;
                });

                $('#result').text('Your value is: '+ total);
                console.log(total);

                });

答案 1 :(得分:0)

请检查您在parseInt函数中传递任何非数值的值。