<script type="text/javascript">
// sovellettu Topi Rantasen Java-koodista
// korjattu 2003-06-17
function PainoIndeksi(form) {
// sijoitetaan hieman useasti käytettyä
// tekstiä Jono -nimiseen muuttujaan:
var Jono ="Tulos viittaa ";
// haetaan pituuden arvo lomakkeen tekstikentästä
// ja sijoitetaan se Pit-muuttujaan:
var Pit=document.forms["PI"].Pituus.value;
// haetaan painon arvo lomakkeen tekstikentästä
// ja sijoitetaan se Pai-muuttujaan:
var Pai=document.forms["PI"].Paino.value;
// indeksiarvon hoitava kaava:
var Indeksi=Pai/(Pit*Pit);
// valitaan jotkut virheentarkistusarvot, joiden
// puitteisiin arvellaan pituuden ja painon sijoittuvan:
var Virhe=((Pit<0.4 || Pit>2.5) || (Pai<1 || Pai>280));
// mikäli pituus on alle 40 senttiä tai yli 2½-metriä,
// tai paino on alle kilon tai yli 280-kiloa,
// tai laskukaavan tulos ei ole numero,
// niin vihelletään peli poikki:
if ((Virhe) || (isNaN(Indeksi))) {
window.alert('Syöttämäsi tieto ei kelpaa!');
}
// muuten esitetään laskukaavan tulos,
// ensin numeroina:
else {
document.forms["PI"].Numeroina.value=Indeksi;
// ja sitten numeroja vastaavana tekstinä:
// (lyhentämällä koodia käyttäen Teksti- ja Jono-muuttujia)
var Teksti=document.forms["PI"].Tekstina;
if (Indeksi<19) {
Teksti.value=Jono+"alipainoon.";
}
else if ((Indeksi>=19) && (Indeksi<=24.999999)) {
Teksti.value=Jono+"ihannepainoon.";
}
else if ((Indeksi>=25) && (Indeksi<=29.999999)) {
Teksti.value=Jono+"lievään ylipainoon.";
}
else if ((Indeksi>=30) && (Indeksi<=34.999999)) {
Teksti.value=Jono+"merkittävään ylipainoon.";
}
else if ((Indeksi>=35) && (Indeksi<=39.999999)) {
Teksti.value=Jono+"vaikeaan ylipainoon.";
}
else {
Teksti.value=Jono+"sairaallolliseen ylipainoon.";
}
}
}
</script>
Tämä tulee BODY-osastoon
<form action="javascript:void(0);" id="PI" name="PI">
<table border="1" cellspacing="2" cellpadding="2">
<caption>Lomakkeella lasketaan henkilön pituuden
ja painon mukainen painoindeksi.</caption><tr><td>
Syötä pituutesi metreinä:
</td><td>
<input type="text" size="6" value="" name="Pituus">
</td><td>
(desimaalierottimena käytetään pistettä, esim. <kbd>1.72</kbd>)
</td></tr><tr><td>
Syötä painosi kiloina:
</td><td>
<input type="text" size="6" value="" name="Paino">
</td><td>
(desimaalierottimena käytetään pistettä, esim. <kbd>75.5</kbd>)
</td></tr><tr><td colspan="3" align="center">
<input type="button"
value="Laske painoindeksi"
onclick="PainoIndeksi(this.form)">
</td></tr>
<tr><td>
Painoindeksisi on:
</td><td>
<input type="text" value="" name="Numeroina">
</td><td align="center">
<input type="text" name="Tekstina" size="60">
</td></tr><tr><td align="right" colspan="3">
<input type="reset" value="Tyhjennä kentät">
</td></tr></table>
</form>