Bonjour,
Dans un script de validation de saisie, je compare deux dates.
Voci ma fonction :
Celle-ci semble très bien fonctionner sauf dans les cas où le mois de la deuxième date est 12. La fonction me retourne 1 alors qu'elle devrait retourner -1.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 //Retourne: // 0 si date_1=date_2 // 1 si date_1>date_2 // -1 si date_1<date_2 function compare(date_1, date_2) { diff = date_1.getTime()-date_2.getTime(); return (diff==0?diff:diff/Math.abs(diff)); }
Mes dates sont sous forme de chaine de caractère et construite avec la fonction suivante :
Je ne vois vraiment pas où est le problème et sollicite votre aide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 //On suppose que la date entrée a été validée auparavant //au format dd/mm/yyyy function getDate(strDate){ day = strDate.substring(0,2); month = strDate.substring(3,5); year = strDate.substring(6,10); d = new Date(); d.setDate(day); d.setMonth(month); d.setFullYear(year); return d; }
Exemple d'appel problématique :
Date 1 : 01/01/2007
date 2 : 01/12/2007
Merci d'avance pour toute réponse
Sempire
Partager