さまざまな価格形式(言語によって異なる)でjqueryで価格を計算する際に問題があります。ここでJquery - さまざまな価格形式の合計バグ
With German: 1.375,50 € (Returns 1.38 €)
English format: €1,375.50 (don't work)
French format: 1 375,50 € (Returns 1.00 €)
Italian format: €1,375.50 (don't work)
Spanish format: € 1.375,50 (don't work)
は私の作業のデモのリンクです:http://jsfiddle.net/QmTNZ/63/
そしてここでは私のコードです:
function ca(){
var $overall = 0;
$("tr.sum").each(function() {
var $qnt = $(this).find(".qty");
var $price = $(this).find("td").eq(2);
console.log($qnt + " | " + $price);
var sum = parseFloat($price.text().replace(",", ".")) * parseFloat($qnt.val().replace(",", "."));
if(isNaN(sum)) {
sum = 0;
}
$(this).find("td").eq(3).text(Math.round(sum * 100)/100);
$overall += sum;
});
$("#total").text($overall);
}
$(function() {
ca();
$('input.qty').bind('change keyup',function(){ca();});
});
価格 "TD" は「例えば、税込を他のテキストを含めることができます19。 %tax "となります。
ここで私の質問は、ユーロ記号を使わずに価格だけを計算するcssクラスを使用して、計算に使用する方法と、価格計算のドットとカンマの問題をすべて回避する方法フォーマット。
(私は....いつもjqueryの初心者です)の助けを
ありがとう!
まさに私の考え。 'data-price'属性を使うか、' jQuery'のネイティブ['$ .data()'](http://api.jquery.com/data/)を使います。 – Shef
@Shef:はい、しかし、 'data- *'属性を扱っていることが分かっているなら 'data( 'price') 'を使って' attr(' data-price ') ' 。 jQueryは、 'data'関数(' data- * '属性とプログラムで割り当てられた他の構造化データ)に2つの無関係なものを組み込みます。 –
ありがとう、良い解決策;) – Bizboss