Bon voila, j'ai un peu avancé.
Deja j'ai la fonction
javascript qui verifie la date de naissance et dedans je voudrais rajouter une opération. j'aurai aimé savoir si cela est possible.
L'opération que j'aimerai faire c'est celle plus haut c'est a dire faire année de con trole - annee de naissance. J'ai essayé de mon cote mais ça marche pas si quelque voit pourquoi merci d'avance :).
<script>
function verifDate(element)
{
var tmp = document.forms["result_rpfa"].elements[element].value;
var regsymbol = new RegExp("[ /-]","g"); //verif de la présence d'espace (01 12 2004), de / (01/12/2004) ou de - (01-12-2004)
var regnum = new RegExp("[0-9]{6,8}","g"); //type 011204 ou 01122004
var jour = 0;
var mois = 0;
var annee = 0;
var res = false;
var ladate = new Date();
var annee_courante = ladate.getFullYear().toString();
var age_enfant;
if (tmp != "")
{
var taille = tmp.length;
var bool_num = regnum.test(tmp);
var bool_symbol = regsymbol.test(tmp);
if (bool_num)
{
switch(taille)
{
case 6: // cas 011204
jour = tmp.substr(0,2);
mois = tmp.substr(2,2);
annee = annee_courante.substr(0,2) + tmp.substr(4,2);
break;
case 8: // cas 01122004
jour = tmp.substr(0,2);
mois = tmp.substr(2,2);
annee = tmp.substr(4,4);
}
}
else
{
if (bool_symbol)
{
switch(taille)
{
case 8: // cas 01/12/04
jour = tmp.substr(0,2);
mois = tmp.substr(3,2);
annee = annee_courante.substr(0,2) + tmp.substr(6,2);
break;
case 10: // cas 01/12/2004
jour = tmp.substr(0,2);
mois = tmp.substr(3,2);
annee = tmp.substr(6,4);
}
}
}
if ((jour != 0) && (mois != 0) && (annee != 0))
{
if ((mois == 1) || (mois == 3) || (mois == 5) || (mois == 7) || (mois == 8) || (mois == 10) || (mois == 12)) // mois � 31 jours
{
if (jour < 32)
{
res = true;
}
}
if ((mois == 4) || (mois == 6) || (mois == 9) || (mois == 11)) // mois � 30 jours
{
if (jour < 31)
{
res = true;
}
}
if (mois == 2) // 28 ou 29 jours selon ann�e bisextille
{
if ((annee % 4) == 0)
{
if (jour < 30)
{
res = true;
}
}
else
{
if (jour < 29)
{
res = true;
}
}
}
}
if (res == true)
{
document.forms["result_rpfa"].elements[element].value = jour + "/" + mois + "/" + annee;
if (mois < 7) // date de naissance au 31/12 le plus proche est le 31/12 de l'ann�e pr�c�dente.
{
age_enfant = parseInt($datesinis.toString().substr(6,4)) - parseInt(annee) + 1;
}
else // date de naissance au 31/12 le plus proche est le 31/12 de l'ann�e en cours.
{
age_enfant = parseInt($datesinis.substr(6,4)) - parseInt(annee);
}
//prendre indice ("date" + i) afin de remplir la case age correspondante ("age" + i)
if (age_enfant < 0)
{
document.forms["result_rpfa"].elements["age" + element.substr(4,element.length - 4)].value = 0;
}
else
{
document.forms["result_rpfa"].elements["age" + element.substr(4,element.length - 4)].value = age_enfant;
}
}
else
{
alert("La date de naissance entrée n'est pas valide(elle doit etre de la forme jj/mm/aaaa)");
document.forms["result_rpfa"].elements[element].focus();
}
}
//return res;
}
</script>
et je met le script sur cette input.
<input type='text' name='date".$nbexit."' size='12' maxlength='10' onblur=\" javascript:verifDate('date".$nbexit."');\">
</div>