我需要总结一些金钱价值,我有这个HTML
<div class=''>54,44</div>
<div class=''>34,10</div>
<div class=''>44,00</div>
<div class=''>14,50</div>
如何使用这些div文本的总和发出警报? (正确的总和!! ;-)) 非常感谢!
答案 0 :(得分:11)
添加一些类money
(或使用$("div")
选择器)并执行以下操作:
var sum = 0;
$(".money").each(function(){
sum += parseFloat($(this).text().replace(",", "."));
});
alert(sum);
答案 1 :(得分:8)
首先,值得在原始数量的每个div上放置一个数据属性,没有任何特定于语言环境的格式。
例如/
<div data-amount="55.44">54,44</div>
然后假设这些div是可识别的,你可以简单地做
var total = 0;
$('some-selector-for-your-divs').each(function(){
total += parseFloat($(this).data('amount'));
});
编辑:Duh!关于货币金额的修正问题。
答案 2 :(得分:2)
逗号在Javascript中不是合法的小数点分隔符,因此您必须将逗号转换为小数点:
var sum = 0;
$('div').each(function() {
var v = $(this).text().replace(',', '.');
sum += parseFloat(v);
});
alert(sum);
答案 3 :(得分:1)
var sum = 0;
$('div').each(function() {
sum += $(this).text();
});
alert("The sum is "+ sum);
答案 4 :(得分:1)
使用以下代码
var sum=0;
$('div').each(function(){
sum+=parseFloat($(this).text().replace(',','.');
});
答案 5 :(得分:1)
var sum = 0;
$('div').each(function() {
var val = $(this).text().replace(',', '.'); // Replace , with .
sum += parseFloat(val);
});
(demo)
<强>更新强>
基地10件事是垃圾。
答案 6 :(得分:-2)
var sum=0;
$('div').each(
function(){
sum+=Number($(this).html());
}
);
alert(sum );
不要忘记将数字转换为正确的格式