在.each()中添加变量的总和

时间:2012-05-13 05:57:36

标签: javascript jquery dom

我是.each()关注某些dom节点,并在我通过它们解析浮点数后提取它们的值。

在.each中,我试图使用一些数学来将输出变量的总和加在一起。

如何做到这一点?

看看我在这里谈论的是什么:

http://jsfiddle.net/LpHbk/1/

请使用您的控制台查看.each()在dom中删除的内容。

2 个答案:

答案 0 :(得分:3)

如果您想添加数字,某处 you're going to have to use +

var re = /.*\$/g;
var total = 0;

$("#dropDowns select option:selected").each(function() {
    var ourValue = $(this).text();
    var basePrice = re.test(ourValue) ? parseFloat(ourValue.replace(re, ''), 10) : 0;
    total += basePrice;
});

$("#finalValue").text("$" + total);

另外,干掉那段代码! http://jsfiddle.net/mattball/uhUHt

答案 1 :(得分:1)

我肯定会使选择器更具体,以便只包含您实际想要包含的select元素。

$("select").on("change", function(){
  var price = 0;
  $("select option:selected").each(function(){
    price += parseInt( this.value.match( /\$(\d+\.\d+)/ )[1] , 10 );
  });
  alert( '$' + price.toFixed(2) );
})

演示:http://jsbin.com/amubew/2/edit