以下表单使用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>
&#13;
`
答案 0 :(得分:2)
您正在通过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);