Bonjour à tous,
j'ai un problème avec le code qui suit, dans le but de mon stage, je dois réaliser un formulaire, prenant une date de naissance et calculant l'âge automatiquement.
j'ai trouvé un code intéressant sur internet, qui marche avec un seul input text, seulement dans mon cas, j'ai besoin d'utiliser des <select>
j'ai donc adapté mon code comme suit, mais cela ne fonctionne pas, après une heure de recherche, toujours rien :calim2:
Merci d'avance pour votre aide.
Code:
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 function calcul_age(jour,mois,annee){ var jour_n = document.getElementById(jour); var mois_n = document.getElementById(mois).value; var annee_n = document.getElementById(annee); var date_day = new Date(); jour_day = date_day.getDate(); mois_day = date_day.getMonth()+1; annee_day = date_day.getFullYear(); //calcul age var ans; var mois; var age=""; if(mois_day >= mois_n){ ans = annee_day - annee_n; mois= mois_day - mois_n; }else{ ans = (annee_day - annee_n) -1; mois= mois_day +( 12 - mois_n); } if(jour_day < jour_n){ mois= mois -1; if(mois_day < mois_n){ ans = ans -1; } } if(ans >0 && ans <=1) age += ans+' an '; if(ans >1) age += ans+' ans '; if(mois >0) age +=mois+' mois '; // on affiche le résultat document.getElementById('reponse').innerHTML = age; }
Code:
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62 <body> <form name="my_form" method="post" action=""> <p> <select name="jour" id="jour"> <option>1</option> <option>2</option> <option>3</option> <option>4</option> <option>5</option> <option>6</option> <option>7</option> <option>8 </option> <option>9</option> <option>10 </option> <option>11</option> <option>12</option> </select> - <select name="mois" id="mois"> <option value="01">Janvier</option> <option value="02">Février</option> <option value="03">Mars</option> <option value="04">Avril</option> <option value="05">Mai</option> <option value="06">Juin</option> <option value="07">Juillet</option> <option value="08">Août </option> <option value="09">Septembre</option> <option value="10">Octobre </option> <option value="11">Novembre</option> <option value="12">Décembre</option> </select> - <select name="année" id="annee" onchange="calcul_age(jour,mois,annee);"> <option>1993</option> <option>1994</option> <option>1995</option> <option>1996</option> <option>1997</option> <option>1998</option> <option>1999</option> <option>2001</option> <option>2002</option> <option>2003</option> <option>2005</option> <option>2006</option> <option>2007</option> <option>2008</option> <option>2009</option> </select> <br /> <div id="reponse"><!-- la réponse va s'inscrire ici --></div> </form> </body>