Parse naar veld

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Rover ---

Rover ---

14/03/2011 00:00:50
Quote Anchor link
HTML:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">  
<html xmlns="http://www.w3.org/1999/xhtml">  
 <head>  
 <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />  
    <title>Opdracht 10</title>  
    <script type="text/javascript" src="script.js"> </script>  
 </head>  

<body>

<div id="invul">
<h1> BMI advies </h1>
<form action="" id="invoer" method="post">
<fieldset>
Uw gewicht in kg:
<input type="text" name="gewicht" id="gewicht" /> <br />
Uw lengte in cm:
<input type="text" name="lengte" id="lengte" /><br />
Uw geslacht is:
<input type="radio" name="geslacht" value="man"/> Man
<input type="radio" name="geslacht" value="vrouw"/> Vrouw <br/>
<input type="submit" name="advies" value="Geef advies" onclick="bereken();" />
</fieldset>
</form>
</div>
<div id="uitkomst">
<h1> Advies </h1>
<form action="#" id="advies">
<fieldset>
Uw BMI is:
<input type="text" name="bmi" id="bmi" /><br/>
Uw gezondheid is:
<input type="text" name="gezondheid" /><br/>
Uw ideale gewicht is:  
<input type="text" name="idgewicht" /> kg
<br/>
</fieldset>
</form>
</div>

</body>
</html>
 


Javascript:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
function controle() {
  var fouten = "";
  var gekozen = false;  
  var geslacht = ""      
  if (document.forms['invoer'].gewicht.value.length == 0) {
    fouten += "U heeft geen gewicht ingevuld\n";
  }  
  if (document.forms['invoer'].lengte.value.length == 0) {
    fouten += "U heeft geen lengte ingevuld\n";  
  }

  for (i = 0; i < document.forms['invoer'].geslacht.length; i++) {
    if (document.forms['invoer'].geslacht[i].checked) {
      gekozen = true;
      geslacht = document.forms['invoer'].geslacht.value;
    }
  }  
  if (!gekozen) { fouten += "Kies uw geslacht."; }
  
    if (fouten == "") {  
    return true;
  } else {
    alert(fouten);
    return false;  
  }
}
  
function bereken() {
  if(controle()) {
    var lengte = parseInt(document.getElementById("lengte").value) ;
    var gewicht = parseInt(document.getElementById("gewicht").value);
    var bmi = gewicht / ((lengte*0.01)*(lengte*0.01));
    
    document.getElementById("bmi").value = bmi;
  }
}

-----
Als ik alle gegevens invul en vervolgens op geef advies druk, dan zie ik de getallen heel snel (paar milliseconden) verschijnen in het tekstveld. Waarom blijft dit niet staan? Wat kan ik eraan doen dat het wel blijft staan?

P.s alleen 'Uw BMI is' wordt snel weergeven, de rest niet...
Gewijzigd op 14/03/2011 00:01:46 door Rover ---
 
PHP hulp

PHP hulp

05/11/2024 11:52:51
 
Kris Peeters

Kris Peeters

14/03/2011 09:46:20
Quote Anchor link
Ja, dat is nu eenmaal wat een formulier doet als je op de submit knop drukt.

Heel simpele oplossing: maak van je submit knop een button.

Lijn 22 wordt dus

<input type="button" name="advies" value="Geef advies" onclick="bereken();" />
Gewijzigd op 14/03/2011 09:47:12 door Kris Peeters
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.