gpt4 book ai didi

javascript - 在 Javascript 计算中显示 2 位小数的值

转载 作者:行者123 更新时间:2023-12-01 02:40:27 27 4
gpt4 key购买 nike

以下表单使用 JavaScript 自动计算 Ans3%。有没有办法在 Ans3% 字段中计算后仅显示前两位小数。通过我的研究,我发现使用 toFixed 方法可以实现这一点,但我不知道我到底应该做什么。

只需在年龄之前的所有字段中填写任何数字,即可显示其正常工作。提前致谢!

<html>

<head>

</head>

<body>

<style>
#ans, #ans2 {
display:none;
}
</style>

<div id="bodyfatmonitoring">
<form name="fatmonitor" Method="post" id="fatmonitor" enctype="multipart/form-data">

<h2 style="color:#b3b3cc;">Calculator</h2>

<table>

<tr>
<th> </th>
<th> </th>
</tr>

<tr>
<td>
<label for="first">First: *</label>
<input type="text" name="first" size="35" id="first" required autocomplete="off">
</td>

<td>
<label for="fifth">Fifth: *</label>
<input type="text" name="fifth" size="35" id="fifth" autocomplete="off">
</td>
</tr>

<tr>
<td>
<label for="second">Second: *</label>
<input type="text" name="second" size="35" id="second" autocomplete="off">
</td>

<td>
<label for="sixth">Sixth: *</label>
<input type="text" name="sixth" size="35" id="sixth" autocomplete="off">
</td>
</tr>

<tr>
<td>
<label for="third">third: *</label>
<input type="text" name="third" size="35" id="third" autocomplete="off">
</td>

<td>
<label for="seventh">Seventh: *</label>
<input type="text" name="seventh" size="35" id="seventh" autocomplete="off">
</td>
</tr>

<tr>
<td>
<label for="fourth">Fourth: *</label>
<input type="text" name="fourth" size="35" id="fourth" autocomplete="off">
</td>

<td>
<label for="age">Age: *</label>
<input type="text" name="age" size="35" id="age" autocomplete="off">
</td>
</tr>

<input type="text" name="ans" size="35" id="ans"/>
<input type="text" name="ans2" size="35" id="ans2"/>

<tr>
<td>
<label for="firstname2">Name | Lastname: *</label>
<input type="text" name="firstname2" size="35" id="firstname2" autocomplete="off"/>
</td>

<td>
<label for="mandate">Date: *</label>
<input type="date" name="mandate" size="35" id="mandate" autocomplete="off"/>
</td>
</tr>

<tr>

<td>
<label for="ans3">Ans3 %: *</label>
<input type="text" name="ans3" size="35" id="ans3" autocomplete="off"/>
</td>

<td>
<label for="category">Category of Ans3: *</label>
<input type="text" name="category" size="35" id="category" autocomplete="off"/>
</td>
</tr>

<tr>
<td>
<button type="button" id="calculator" name="calculator" onclick="Calculate(); Calculate2();">Υπολογισμός</button>
</td>

</tr>

</table>

</form>
</div>


</body>

</html>

<script>
function Calculate() {
var first = document.getElementById('first').value;
var second = document.getElementById('second').value;
var third = document.getElementById('third').value;
var fourth = document.getElementById('fourth').value;
var fifth = document.getElementById('fifth').value;
var sixth = document.getElementById('sixth').value;
var seventh = document.getElementById('seventh').value;
var ans = document.getElementById('ans').value;
var ans2 = document.getElementById('ans2').value;

document.getElementById('ans').value = parseInt(first) + parseInt(second) + parseInt(third) + parseInt(fourth) + parseInt(fifth) + parseInt(sixth) + parseInt(seventh);
document.getElementById('ans2').value = 1.112 - 0.00043499 * parseInt(document.getElementById('ans').value) + 0.00000055 * Math.pow(parseInt(document.getElementById('ans').value), 2) - 0.00028826 * parseInt(document.getElementById('age').value);
document.getElementById('ans3').value = ((4.95 / document.getElementById('ans2').value) - 4.5) * 100;

}
</script>

<script>
function Calculate2() {

//Υπολογισμός Κατηγορίας - Ταξινόμηση
var age = document.getElementById('age').value;
var ans3 = document.getElementById('ans3').value;
//Υπολογισμός Κατηγορίας - Ταξινόμηση

//Υπολογισμός Κατηγορίας - Ταξινόμηση

if ( (age <= 39 && age >= 18 && ans3 <= 8 && ans3 >= 0) ){
document.getElementById('category').value = 'Μειωμένο Λίπος';
}

else if ( (age <= 39 && age >= 18 && ans3 <= 20 && ans3 >= 8.00000001) ){
document.getElementById('category').value = 'Φυσιολογικό Λίπος';
}

else if ( (age <= 39 && age >= 18 && ans3 <= 25 && ans3 >= 20.00000001) ){
document.getElementById('category').value = 'Υπερβάλλον Λίπος (Υπέρβαρος)';
}

else if ( (age <= 39 && age >= 18 && ans3 >= 25.00000001) ){
document.getElementById('category').value = 'Υπερβάλλον Λίπος (Παχύσαρκος)';
}

else if ( (age <= 59 && age >= 40 && ans3 <= 11 && ans3 >= 0) ){
document.getElementById('category').value = 'Μειωμένο Λίπος';
}

else if ( (age <= 59 && age >= 40 && ans3 <= 22 && ans3 >= 11.00000001) ){
document.getElementById('category').value = 'Φυσιολογικό Λίπος';
}

else if ( (age <= 59 && age >= 40 && ans3 <= 28 && ans3 >= 22.00000001) ){
document.getElementById('category').value = 'Υπερβάλλον Λίπος (Υπέρβαρος)';
}

else if ( (age <= 59 && age >= 40 && ans3 >= 28.00000001) ){
document.getElementById('category').value = 'Υπερβάλλον Λίπος (Παχύσαρκος)';
}

else if ( (age <= 125 && age >= 60 && ans3 <= 13 && ans3 >= 0) ){
document.getElementById('category').value = 'Μειωμένο Λίπος';
}

else if ( (age <= 125 && age >= 60 && ans3 <= 25 && ans3 >= 13.00000001) ){
document.getElementById('category').value = 'Φυσιολογικό Λίπος';
}

else if ( (age <= 125 && age >= 60 && ans3 <= 30 && ans3 >= 25.00000001) ){
document.getElementById('category').value = 'Υπερβάλλον Λίπος (Υπέρβαρος)';
}

else if ( (age <= 125 && age >= 60 && ans3 >= 30.00000001) ){
document.getElementById('category').value = 'Υπερβάλλον Λίπος (Παχύσαρκος)';
}

else if ( (age <= 17) ){
document.getElementById('category').value = 'Λάθος Ηλικία';
}

else {
document.getElementById('category').value = 'Υπολογίστε το Σωμ. Λίπος';
}
//Υπολογισμός Κατηγορίας - Ταξινόμηση

}
</script>

`

最佳答案

您正在通过 document.getElementById('ans3').value = ((4.95/document.getElementById('ans2').value) - 4.5) * 100; 设置 ans3 的值。该值返回一个数字。 toFixed 是一种数字方法,因此请在该数字上调用它。

document.getElementById('ans3').value = (((4.95 / document.getElementById('ans2').value) - 4.5) * 100).toFixed(2);

如果您使用多行,这可能会更容易理解。

var ans3 = ((4.95 / document.getElementById('ans2').value) - 4.5) * 100;
document.getElementById('ans3').value = ans3.toFixed(2);

关于javascript - 在 Javascript 计算中显示 2 位小数的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47610176/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com