2017-01-16 19 views
-2

私はnumber_format($number,2,",",".")を使用しています。実施例番号は、この形式である:JavaScriptを使用して行の8.726,36複数の点とカンマのjavascriptを置き換えます

私は合計:

var totals = [0,0,0,0,0,0]; 

$(document).ready(function(){ 
    var $dataRows = $("#sum_table tr:not('.totalColumn, .titlerow')"); 
    $dataRows.each(function() { 
     $(this).find('.rowDataSd').each(function(i) {   
      totals[i] += parseFloat($(this).html()); 
     }); 
    }); 

    $("#sum_table td.totalCol").each(function(i) { 
     $(this).html(totals[i].toFixed(2).replace(".",",")+ " kn"); 
    }); 
}); 

しかし合計が良い(青行)ではありません。

Photo

どのように私は複数の.replace(",",".")を使用することができますか?

+1

'.replace(/、/ g、 '。');'? – putvande

+1

あなたはJavaScriptが常に小数点に '.'を使用していることをはっきりと知っていて、文字を置き換える方法をはっきりと分かっているので、何が問題なのですか?あなたの 'totals [i] + = parseFloat($(this)).html());'行はJSの数値書式を無視し、その数値が何千もの数値であることを期待する '8.726,36 'のような値を送ります。それは魔法のようには行いません。あなたが最後に表示するときに逆にしたのと同じように、あなたはそれをしなければなりません。 –

+0

あなたはどのように使用すべきか疑問です。代わりに、何千ものセパレータとして?これはローカリゼーションと関係があります。この質問はあなたを助けますか? http://stackoverflow.com/questions/2901102/how-to-print-a-number-with-commas-as-thousands-separators-in-javascript – Kokodoko

答えて

1

人間が判読可能な形式の番号を解析することはひどい考えです。あなたのチームが1'234'567.89のような別の形式を使用することを決めた場合はどうなりますか?あなたは詰まっている!代わりに

、のようなものを生成:あなたは将来のために心配することなく、一貫して、多数の実際の値を取得するために.data('value')にアクセスすることができる方法

<span class="number" data-value="1234567.89">1.234.567,89</span> 

を。

+0

そして私はそれが根本的に間違っていると言っています。 –

関連する問題