我想在这里提供一些帮助。 我需要在VAT字段中只获得两位小数。
提前感谢您提供任何帮助
$('select').change(function() {
var selected_value = $('#sel option:selected').val();
var no_VAT = document.getElementById('no_VAT');
no_VAT.innerText = selected_value;
var VAT = document.getElementById('VAT');
VAT.innerText = selected_value * 0.23;
var with_VAT = document.getElementById('with_VAT');
with_VAT.innerText = selected_value * 1.23 ;
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select name="selector" id="sel">
<option value="10">2</option>
<option value="12">3</option>
<option value="18">6</option>
</select>
<p id="no_VAT"></p>
<p id="VAT"></p>
<p id="with_VAT"></p>
答案 0 :(得分:1)
您可以使用toFixed()
将数字结果格式化为小数点后的2个位置var VAT = document.getElementById('VAT');
VAT.innerText = (selected_value * 0.23).toFixed(2);
^^^^^^^^^^
由于fixedTo()
返回一个String,如果你想确保结果仍然是一个数字(例如,如果你想稍后使用它),只需将其解析为浮点数。
VAT.innerText = parseFloat((selected_value * 0.23).toFixed(2));
答案 1 :(得分:1)
更改为 selected_value * 0.23 至(selected_value * 0.23).toFixed(2)
$('select').change(function() {
var selected_value = $('#sel option:selected').val();
var no_VAT = document.getElementById('no_VAT');
no_VAT.innerText = selected_value;
var VAT = document.getElementById('VAT');
VAT.innerText = (selected_value * 0.23).toFixed(2);
var with_VAT = document.getElementById('with_VAT');
with_VAT.innerText = selected_value * 1.23 ;
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select name="selector" id="sel">
<option value="10">2</option>
<option value="12">3</option>
<option value="18">6</option>
</select>
<p id="no_VAT"></p>
<p id="VAT"></p>
<p id="with_VAT"></p>
&#13;