2017-10-13 19 views
0

一連の通貨形式の数値に基づいて小計を作成しようとしていますが、数値を整数に変換して追加できるようにしています。 (それは関数の結果だから、それはとにかくここができませんでした)複数の通貨でフォーマットされた要素の合計を計算する

$(function() { 
 
    var totals = $('.price'); 
 

 
    var sum = 0; 
 
    for (var i = 0; i < totals.length; i++) { 
 
    //strip out dollar signs and commas 
 
    $(totals[i].text()).replace(/[^\d.]/g, ''); 
 

 
    //convert string to integer 
 
    var ct = parseFloat($(totals[i].text())); 
 
    sum += ct; 
 
    } 
 

 
    console.log(sum); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="price">$195,000.20</div> 
 
<div class="price">$21,404.00</div> 
 
<div class="price">$7,000.00</div> 
 
<div class="price">$450.00</div>

+0

$(totals[i]).text()ないしたいあなたコードスニペットが機能します。 –

+0

うまくいけば私はここにいません;) – user13286

答えて

2

replace()は、渡された文字列を変更しない:ここに私がしようとしているものです。 は、変更された値を返します。

保存することに基づいてreplace()の結果、および合計:また

$(function() { 
 
    var totals = $('.price'); 
 

 
    var sum = 0; 
 
    for (var i = 0; i < totals.length; i++) { 
 
    //strip out dollar signs and commas 
 
    var v = $(totals[i]).text().replace(/[^\d.]/g, ''); 
 

 
    //convert string to integer 
 
    var ct = parseFloat(v); 
 
    sum += ct; 
 
    } 
 

 
    console.log(sum); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="price">$195,000.20</div> 
 
<div class="price">$21,404.00</div> 
 
<div class="price">$7,000.00</div> 
 
<div class="price">$450.00</div>

:タイプミスに注意してください - あなたはことを確認してください、$(totals[i].text())

+0

ありがとう! – user13286

関連する問題