Calcul de l'age a partir d'un input text [Résolu]

Messages postés
30
Date d'inscription
vendredi 18 février 2005
Dernière intervention
27 octobre 2010
- 4 mars 2010 à 11:14 - Dernière réponse :
Messages postés
30
Date d'inscription
vendredi 18 février 2005
Dernière intervention
27 octobre 2010
- 4 mars 2010 à 14:56
Salut à tous,
n'étant pas un spécialiste en javascript, j'implore votre aide
j'aimerais afficher l'age de la personne à coté de l'input text qui réceptionne la date de naissance au format xx/xx/xxxx de cet façon :

<script type="text/javascript">print (age+" ans")</script>

J'espere que vous comprenez le principe.
HELPPPP !
Merci
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
292
Date d'inscription
mercredi 7 novembre 2007
Dernière intervention
15 janvier 2013
- 4 mars 2010 à 12:34
3
Merci
Salut;
Tout d'abord en javascrip, la fonction "print" sert à lancer une impression papier via l'imprimante, dans ce cas à on utilisera la fonction innerHTML, ensuite je t'ai fait une petite base, mais comme tu peux le voir elle ne tiens pas comte du mois de naissance seulement de l'année, à toi d'imaginer la suite. Sinon je verrais plutôt 3 champs différent (jour/mois/année) ce qui eviterait les problèmes du au utilisateurs qui rentrerais des "-" à la place de "/" ou ceux qui rentrerait la date au format anglais. Sinon quelque verification (genre l'année rentrée est bien passée, le mois n'est pas supérieur à 12 etc...)
bon dev.

<html>

<script type="text/javascript">
function affichAge(date) {
var curr_year = new Date();
var tab_date = date.split("/");
var birth_year = tab_date[2];
document.getElementById('age').innerHTML = 'ans : '+ (curr_year.getFullYear() - birth_year);
}
</script>




</html>

Merci ChasseurDeChimeres 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 90 internautes ce mois-ci

Commenter la réponse de ChasseurDeChimeres
Messages postés
30
Date d'inscription
vendredi 18 février 2005
Dernière intervention
27 octobre 2010
- 4 mars 2010 à 14:07
0
Merci
Merci beaucoup je vais commencer avec ça
Commenter la réponse de djew
Messages postés
30
Date d'inscription
vendredi 18 février 2005
Dernière intervention
27 octobre 2010
- 4 mars 2010 à 14:56
0
Merci
J'ai un peu affiné au mois près avec test date au format xx/xx/xxxx :

function affichAge(date)
{
var isdate = new RegExp("^[0-9]{2}[/]{1}[0-9]{2}[/]{1}[0-9]{4}$","g");
if (isdate.test(date))
{
var curr_date = new Date();
var tab_date = date.split("/");
var birth_year = tab_date[2];
var birth_month = tab_date[1];
var lage = 0;

lage = curr_date.getFullYear() - birth_year;

if (birth_month >= curr_date.getMonth()+1)
{
lage--;
}
document.getElementById('age').innerHTML = '('+lage+' ans)';
}
}
Commenter la réponse de djew

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.