Beispiel:Form-number.html
Aus SELFHTML-Wiki
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0;" />
<link rel="stylesheet" type="text/css" media="screen" href="./Beispiel:SELFHTML-Beispiel-Grundlayout.css" />
<title>Zahleneingabe mit type="number"</title>
<style>
body {
margin: 2em auto;
}
label {
display: block;
margin: 2em;
}
</style>
<script>
document.addEventListener("DOMContentLoaded", function() {
var groesse = document.querySelector("#groesse"),
masse = document.querySelector("#masse"),
bmi = document.querySelector("#bmi");
critic = document.querySelector("#critic");
document.addEventListener("input", berechneBMI);
berechneBMI();
function berechneBMI() {
var bmiWert = masse.valueAsNumber / Math.pow((groesse.valueAsNumber / 100), 2);
var formatter = new Intl.NumberFormat(
"de-DE",
{ minimumFractionDigits: 1, maximumFractionDigits: 1, useGrouping:false });
let bewertung;
if (bmiWert < 12)
bewertung = "Lebensgefährliches Untergewicht, rufen Sie den Notarzt, gehen Sie nicht allein ins Krankenhaus!!";
else if (bmiWert < 16)
bewertung = "Hochgradiges Untergewicht. Gehen Sie ins Krankenhaus, lassen Sie sich helfen!";
else if (bmiWert < 17.5)
bewertung = "Untergewicht. Lassen Sie Ihre Appetitlosigkeit untersuchen.";
else if (bmiWert < 18.5)
bewertung = "Untergewicht. Gönnen Sie sich mal ein Butterbrot mehr.";
else if (bmiWert <= 25)
bewertung = "Normalgewicht. Herzlichen Glückwunsch! Machen Sie auch genug Sport?";
else if (bmiWert < 30)
bewertung = "Übergewicht. Lassen Sie das Bier und die Chips weg und machen Sie Sport!";
else if (bmiWert < 35)
bewertung = "Adipositas I. Fragen Sie Ihren Arzt, wie Sie abnehmen können!";
else if (bmiWert < 40)
bewertung = "Adipositas II. Fragen Sie unbedingt Ihren Arzt, wie Sie abnehmen können!";
else
bewertung = "Schwere Adipositas! Lebensgefahr, lassen Sie sich dringend helfen!";
bmi.textContent = formatter.format(bmiWert);
critic.textContent = bewertung;
}
});
</script>
</head>
<body>
<h1>Body-Mass-Index</h1>
<form>
<label for="groesse">
Größe:
<input id="groesse" type="number" min="100" max="220" step="1" value="175">
cm
</label>
<label for="masse">
Masse:
<input id="masse" type="number" min="30" max="225" step="0.5" value="75">
kg
</label>
<label for="bmi">BMI:
<output id="bmi"></output>
</label>
<label for="critic">Bedeutung:
<output id="critic"></output>
</label>
</form>
</body>
</html>