Javascript 如何对divs值求和?

Javascript 如何对divs值求和?,javascript,jquery,html,sum,each,Javascript,Jquery,Html,Sum,Each,我有一些有值的div。我想用一个 我代码中的问题是,我得到的是最后一个div值,而不能对另一个求和 Html代码: <div class="cart-footer"> <div class="order-tools"> <h3 id="total"> </h3> </div> <div class="cash-out"> </div&g

我有一些有值的div。我想用一个
我代码中的问题是,我得到的是最后一个div值,而不能对另一个求和

Html代码:

<div class="cart-footer">
      <div class="order-tools">
        <h3 id="total">

        </h3>
      </div>
      <div class="cash-out">

      </div>
    </div>
您可以在此代码中看到
#项目总数

$(".cart-body").append(function(){
     return "<div id='cart-list'><div class='product-name'>"+personObject.name+"</div><div class='product-tools'><input type='number' data-id='1' value='1' min='1'></input><label id='price'>Price: "+personObject.price+"</label><label data-value='"+personObject.count * personObject.price+"' id='item-total'>"+personObject.count * personObject.price+"</label></div></div>";
   });
$(“.cart body”).append(函数(){
返回“+personObject.name+”Price:“+personObject.Price+”+personObject.count*personObject.Price+”;
});

您正在处理代码中的逻辑错误。您所做的错误操作是在
$(“#项目总数”)
中循环。这是错误的,因为
#item total
正在选择一个唯一的HTML元素

您要做的是使用不同的选择器循环所有元素。例如,将HTML中的:
替换为

现在在JQuery中,选择
$('.total')
将选择
.total
标记的HTML元素的所有实例

var items=$('.item'),
兑现=$(“#兑现”),
总和=0;
$。每个(项目、功能(值){
//items[value]将包含一个HTML元素,表示一个“item”。
var itemValue=parseFloat(items[value].innerHTML);
总和+=!isNaN(itemValue)?itemValue:0;
});
html('Total:$'+sum)

1.
2.
3.
4.

0
因为ID必须是唯一的
$(“#项目总数”)。每个
都没有意义如何?我不明白您是否有多个ID为
项目总数的元素
?是的可能重复我有多个@j08691,但我想求和
项目总数
您有多少个
项目总数
?您想将
项目总计
相加成其他项目还是相互相加?这是一个购物车,每次可能都有更多的项目。然后不要使用
id='item-total'
,而是使用
class='item-total'
。请理解使用id和classI与我得到的相同值之间的区别
$(".cart-body").append(function(){
     return "<div id='cart-list'><div class='product-name'>"+personObject.name+"</div><div class='product-tools'><input type='number' data-id='1' value='1' min='1'></input><label id='price'>Price: "+personObject.price+"</label><label data-value='"+personObject.count * personObject.price+"' id='item-total'>"+personObject.count * personObject.price+"</label></div></div>";
   });