2014-02-07 68 views
1

希望有一個快速的答案在這裏,所以這裏去...使用Javascript - 計算器需要顯示貨幣符號

我有一個非常簡單的計算器腳本。從2個框中輸入一個輸入,並將它們乘以隱藏值,然後在簡單的「Total」標籤中顯示它們。完美的作品,除非我需要在數字之前顯示「£」。

我不知道我是否最好使用正則表達式,或者如果我有一個簡單的方法來預先顯示一個簡單的'£'顯示的金額。

這裏的代碼,希望有人能幫助!

$(function() { 
    $('#txtTables, #txtIndividuals').on('input', function() { 
     var tablePrice = $('#hdnPricePerTable').val(); 
     var indPrice = $('#hdnPricePerIndividual').val(); 
     var totalTablePrice = tablePrice * $('#txtTables').val(); 
     var totalIndPrice = indPrice * $('#txtIndividuals').val(); 
     $('#total').text(totalIndPrice + totalTablePrice); 
    }); 
}); 

謝謝大家!

+0

的£符號是獨一無二的它會改變,當國家改變 –

+0

或者您可以使用£ Htmlcode磅 –

+0

的我並不需要它在任何其他貨幣中都可以看到,這個只會在英國Rahul使用,謝謝:) – IfElseTryCatch

回答

1

假設你沒有對總數進行任何計算,只是預先計算它。您所寫的代碼和以下建議將覆蓋以前包含的任何內容到#total元素。

var totalPrice = parseInt(totalIndPrice, 10) + parseInt(totalTablePrice, 10); 

$('#total').html("£" + totalPrice); 
+0

這似乎並不奏效。我拿數字1(比如5張20英鎊的門票)和數字2(10張桌子每英鎊50英鎊),似乎只是吐出了100500英鎊,而不是圖1和圖2的總和。爲什麼這是行不通的。 – IfElseTryCatch

+0

您必須設置優先級,否則結果將不正確:'(totalIndPrice + totalTablePrice)' – smnbbrv

+0

它將數字連接爲字符串,而不是實際將它們相加。編輯將解決這個問題。 –

1

你可以使用££的顯示結果

0

我不會將其添加到現場之前符號。

你可以使它不同的方式:只需顯示在輸入。

請參閱example只是爲了看到一個想法。我已經在Chrome中完成了,所以我不確定它在其他瀏覽器中表現出色(僅僅是因爲用戶代理的默認樣式不同),但它對於每個瀏覽器都很容易解決。

HTML:

<div class="currency">&pound;</div> 

    <input> 

CSS:

.currency { 
    position: absolute; 
    padding: 4px 7px; 
} 
+0

切換貨幣:'$(「div.currency」).text(「$」)'就是這樣! – smnbbrv