ChEp51
Messages postés2Date d'inscriptionjeudi 22 avril 2004StatutMembreDernière intervention 2 février 2007
-
1 févr. 2007 à 15:50
cs_roro06
Messages postés732Date d'inscriptionjeudi 2 janvier 2003StatutMembreDernière intervention29 octobre 2007
-
2 févr. 2007 à 11:10
Bonjour ,
Je ne sais pas si j'ai choisie la bonne section pour poster ça, mais je pense que vous me le direz le cas échéant ; )
je suis sur un formulaire avec 2 dates : une date de départ et une date de retour. Mes dates sont formés sous forme de liste : une pour les jours, une pour les mois et une pour les années.
Je souhaite faire en sorte que la date de départ soit toujours inférieure à la date de retour.
J'appel donc ma fonction sur "onchange" de la liste déroulante des jours pour la date de départ (pour commencer!)
Ma fonction JAVASCRIPT change donc le numéro du jour dans la liste jour de la date de retour.
[SCRIPT]
var origine = f.dateeedep.value; // Champs caché qui contient le date complète de depart sous la forme "dd/mm/yy"
var depart = f.dateeedep.value.split('/');
var temoin=0;
if( parseInt(depart[2]) >= parseInt(retour[2]) ){temoin = 1;} // Test pour les années
else
{
if(parseInt(depart[1]) >= parseInt(retour[1])){temoin = 1;} // Test pour les mois
else
{
if(parseInt(depart[0]) >= parseInt(retour[0])){temoin = 1;}// Test pour les jours
}
}
if(temoin==1)
{
newdateretour = add_days(origine); // Fonction qui ajoute un jour
f.dateeeret.value = newdateretour; // change la date retour dans un champs caché
fill_field_retour(); // Met a jour les lites date retour en fonction du champs caché
update_lists('R'); // Met a jour les lites date retour en fonction du champs caché
}
nickadele
Messages postés1251Date d'inscriptionmercredi 7 août 2002StatutModérateurDernière intervention10 avril 2013 1 févr. 2007 à 21:43
Bonjour,
petite précision par rapport à ce que dit Roro, ceci ne t'empèche pas de présenter tes données avec le 0 mais par contre tu ne dois pas le mettre au niveau du value ex :
<option value='1'>01</option>
<option value='2'>02</option>
...
<option value='8'>08</option>
<option value='9'>09</option>
<option value='10'>10</option>
Nickadele
----------------------------------------------
non, ma belle ne s'appel pas Adèle
cs_roro06
Messages postés732Date d'inscriptionjeudi 2 janvier 2003StatutMembreDernière intervention29 octobre 2007 1 févr. 2007 à 17:04
Bonjour
ça me rappele qchose, ça ! Il faut savoir que javascript considère tout nombre commençant par 0 comme étant en octal (base 8), donc pour tous les nombres de 0 a 7, pas de problèmes, mais 8 et 9 n'existent pas en base 8. Il faut utiliser: nombre=parseInt(nombreOctal, 10); ... Ou alors ne pas mettre de zero devant tes jours (et mois)