计算值的总和

时间:2014-05-06 10:57:45

标签: javascript jquery

我试图在jQuery中获取一些值的总和。我这样做

var sum = 0;
$(".total").text(sum += parseInt($(".numbers").text(), 10));

但是没有赚钱。我试过以下哪个也行不通?

var sum = 0;
$(".total").parseInt(sum += parseInt($(".numbers").text(), 10));

如何在这里简单计算总和?

演示:http://jsfiddle.net/M7ghD/

4 个答案:

答案 0 :(得分:2)

要对值进行求和,您需要迭代.numbers个元素:

var sum = 0;
$('.numbers').each(function() {
    sum += parseInt($.text(this), 10);
});

$('.total').text(sum);

DEMO: http://jsfiddle.net/M7ghD/5/

答案 1 :(得分:1)

你必须取class=numbers的每个值并加总。

尝试:

var sum = 0;

$( ".numbers" ).each(function() {
  sum=sum+parseInt($(this).text(), 10)
})

$(".total").text(sum);

DEMO

答案 2 :(得分:0)

试试这个http://jsfiddle.net/M7ghD/1/

似乎正在$(".numbers").text()会同时为您提供所有span.numbers的串联字符串(=' 421293')。你必须遍历元素并总结它们:

var sum = 0;
$('.numbers').each(function(){
  sum += parseInt($(this).text(),10);
});
$(".total").text( sum );

答案 3 :(得分:0)

您也可以使用

  var sum = 0;
  $('.numbers').each(function() {
        sum += Number($.text(this));
  });

 $(".total").text(sum);

parseInt(string)会将包含非数字字符的字符串转换为数字,只要该字符串以数字字符开头。

如果字符串包含任何非数字字符,则数字(字符串)将返回NaN

DEMO