2017-12-02 4 views
0

Das folgende Formular berechnet die Ans3% automatisch mit Javascript. Gibt es eine Möglichkeit, nur die ersten zwei Dezimalstellen nach der Berechnung im Ans3% -Feld anzuzeigen. Durch meine Forschung habe ich herausgefunden, dass dies mit der toFixed-Methode erreichbar ist, aber ich kann nicht herausfinden, was genau ich tun soll.Wert mit 2 Dezimalstellen in JavaScript-Berechnungen anzeigen

Füllen Sie einfach mit allen Zahlen alle Felder bis zum Alter, um zu zeigen, dass es funktioniert. Danke im Voraus!

<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>

`

Antwort

2

Du ans3 Wert über document.getElementById('ans3').value = ((4.95/document.getElementById('ans2').value) - 4.5) * 100; Einstellung. Dieser Wert gibt eine Zahl zurück. toFixed ist eine Methode der Zahlen, also rufe sie auf dieser Zahl an.

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

Dies ist möglicherweise einfacher zu verdauen, wenn Sie mehrere Zeilen verwenden.

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

genial! Danke vielmals! –

Verwandte Themen