/ Forside/ Teknologi / Udvikling / Java Scripts / Spørgsmål
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
BMI beregning
Fra : Bml
Vist : 1589 gange
70 point
Dato : 23-08-07 20:48

Hvorfor viser den ikke noget som helst efter jeg satte det der else-if haløj ind? Hvis man fjerner det der else-if noget så virker det. Tror godt i kan se idéen i det. Jeg vil have den til at vise en alert-box, hvis f.eks. x er større eller lig med 15 og mindre end 19,999.

Kode
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type="text/javascript" language="javascript">
function BMI(){
vaegt = parseFloat(prompt("Indtast din vægt i kg", ""));
hojde = parseFloat(prompt("Indtast din højde i centimeter", ""));
h = hojde/100;
x = vaegt/(h*h);
alert ("Dit BMI tal:" + '\n' + ""+ x +" ");

if (x<14,999) {
alert ("Vurdering: Stærkt undervægtig");
}
else if (x>=15 && x<19,999) {
alert ("Vurdering: Undervægtig");
}
else if (x>=20 && x<24,999) {
alert ("Vurdering: Normal vægt");
}
else if (x>=25 && x<29,999) {
alert ("Vurdering: Overvægtig");
}
else (x>30) {
alert ("Vurdering: Stærkt overvægtig");
}
}

</script>
</head>

<body>
<label>
<input type="submit" name="button" id="button" value="Beregn BMI" onclick="BMI();" />
</label>

</body>
</html>


 
 
Kommentar
Fra : molokyle


Dato : 24-08-07 06:52

alert funktionen stopper programflow og dette fortsættes først efter at den første alertbox er lukket.

Prøv selv med f.eks.:
Kode
<script type="text/javascript">
alert ("STOP 1.");
alert ("STOP 2.");
</script>


Først popper STOP 1 op og først når denne lukkes popper STOP 2 op.

</MOLOKYLE>

Accepteret svar
Fra : molokyle

Modtaget 70 point
Dato : 24-08-07 07:01

Løsning indskriv teksten som variabel i din første alert box:
Kode
var tekst="";
if (x<14,999) {
tekst="Vurdering: Stærkt undervægtig";
}
else if (x>=15 && x<19,999) {
tekst="Vurdering: Undervægtig";
}
else if (x>=20 && x<24,999) {
tekst="Vurdering: Normal vægt";
}
else if (x>=25 && x<29,999) {
tekst="Vurdering: Overvægtig";
}
else (x>30) {
tekst=("Vurdering: Stærkt overvægtig");
}
alert ("+tekst+" Dit BMI tal:" + '\n' + ""+ x +" ");


(..er ikke helt sikker på om anførselstegn er sat rigtigt, men du forstår vel hvad jeg mener?)

Du kan iøvrigt med fordel bruge switch sætningen i stedet for if..then..else konstruktionen:

http://www.w3schools.com/js/js_switch.asp

</MOLOKYLE>



Godkendelse af svar
Fra : Bml


Dato : 24-08-07 19:17

Tak for svaret molokyle. Manglede bare en if på den sidste
Kode
else (x>30) {
tekst=("Vurdering: Stærkt overvægtig");
}

Troede bare at det skulle være else når det var den sidste, åbenbart ikke.


Du har følgende muligheder
Eftersom du ikke er logget ind i systemet, kan du ikke skrive et indlæg til dette spørgsmål.

Hvis du ikke allerede er registreret, kan du gratis blive medlem, ved at trykke på "Bliv medlem" ude i menuen.
Søg
Reklame
Statistik
Spørgsmål : 177414
Tips : 31962
Nyheder : 719565
Indlæg : 6407844
Brugere : 218876

Månedens bedste
Årets bedste
Sidste års bedste