首先,道歉对Java Script不太好。我试图实现的是以下计算,以包括小数位
<script>
function calc() {
var cost = document.getElementById('cost').value;
var singleShare = document.getElementById('singleShare').value;
var priceShare = document.getElementById('priceShare').value;
var cost1 = parseInt(cost) || 0;
var singleShare1 = parseInt(singleShare) || 0;
var priceShare1 = parseInt(priceShare) || 0;
var pv = (parseInt(priceShare1, 10) * 10000) / (parseInt(cost1, 10) * parseInt(singleShare1, 10));
document.getElementById("result").innerHTML = ('P/V = '+pv.toFixed(2)+'%');
}
</script>
输入来自以下表单输入:
<input type="number" class="form-control" id="cost">
<input type="number" class="form-control" id="singleShare">
<input type="number" class="form-control" id="priceShare" onkeyup="calc();">
该函数适用于圆数,但只要我将小数位放入,如下面的计算
费用为120 singleShare 2.5 priceShare 3.25结果应为108.33%
任何人都可以帮我解决这个问题吗?
答案 0 :(得分:1)
那是因为你正在使用parseInt
来解析一个整数。请尝试使用parseFloat
。请注意,parseFloat
没有基数 - 如果您希望使用10
,则需要省略当前包含的parseFloat
参数。