我做了這個:JavaScript語法錯誤(限2位小數)
document.getElementsByName("price")[0].value.replace(".", ",").toFixed(2)
我想要的值限制到小數點後兩位。
但與.toFixed(2)
我的腳本不起作用,我做錯了什麼?
完整代碼:
<script>
var jq111 = jQuery.noConflict();
jq111(function(){
jq111('#_regular_price').on('input', function(){
document.getElementsByName("duel-cost")[0].value = document.getElementsByName("_regular_price")[0].value.replace(",", ".");
if(jq111("#prized").val().length > 1) {
var discount = document.getElementsByName("discount")[0].value;
var cost = document.getElementsByName("duel-cost")[0].value;
document.getElementsByName("_sale_price")[0].value = cost - (cost * (discount/100));
}
})
});
<script>
function updateInput(){
document.getElementsByName("duel-cost")[0].value = document.getElementsByName("_regular_price")[0].value.replace(",", ".");
var discount = document.getElementsByName("discount")[0].value;
var cost = document.getElementsByName("duel-cost")[0].value;
document.getElementsByName("price")[0].value = cost - (cost * (discount/100));
document.getElementsByName("_sale_price")[0].value = document.getElementsByName("price")[0].value.replace(".", ",").toFixed(2);
}
</script>
新:
var element = document.getElementsByName("price")[0];
element.value = parseFloat(element.value.replace(/\./g, '').replace(',', '.')).toFixed(2).replace('.', ',');
document.getElementsByName("_sale_price")[0].value = element;
如果您詳細闡述「打破我的腳本」,這將有所幫助。你已經給出了有效的語法,所以還有其他的事情。 –
現在我粘貼我的完整代碼 –
可能的重複[爲什麼我的toFixed()函數不工作?](http://stackoverflow.com/questions/4937251/why-is-my-tofixed-function-not-working) – AGE