La communauté ALL HTML c'est 59577 membres à ce jour dont 0 inscrits aujourd'hui et 15 depuis une semaine.

  • imprimer
  • aide

Forum de discussions « Javascript - DHTML - VBScript »

Retrouvez les publications relatives à ces discussions dans notre rubrique javascript.

comparison de date

liste des forums liste des discussions Participer à la discussion

Photo de soho Message publié le lundi 10 décembre 2001 à 15 h 53 par soho. S [}:-] H [8] [(!)]
Dans un script je fais la comparaison suivante :
if (document.search.date1.value > document.search.date2.value)

Le probleme est que, comme leur nom l'indique les champs date1 et date2 contiennent des dates.
Et lors de mon test, 31/12/01 est superieur a 04/01/02.
Comment remedier a ce probleme??
Photo de Toubiz Message publié le lundi 10 décembre 2001 à 16 h 23 par Toubiz.
inverser tous les champs : au lieu de prendre jj/mm/aaaa tu prends aaaa/mm/jj et comme ca plus de probleme.
Photo de GMC Message publié le lundi 10 décembre 2001 à 17 h 00 par GMC. modérateur Algorithme, modélisation... Pensez au nouveau forum pour vous aider
ou utilise Date.parse(dateString)
puis la comparaison devrait aller mieux
Photo de Toubiz Message publié le lundi 10 décembre 2001 à 17 h 04 par Toubiz.
ah ben evidemment quand on connait la fonction en js, c'est nettement plus simple.
Me coucherai moins con moi ce soir.
Photo de soho Message publié le mardi 11 décembre 2001 à 09 h 03 par soho. S [}:-] H [8] [(!)]
la syntaxe suivante est elle correcte? si oui ca ne marche pas [:((]

if (Date.parse(document.search.date1.value) > (Date.parse(document.search.date2.value)))
Photo de Toubiz Message publié le mardi 11 décembre 2001 à 09 h 20 par Toubiz.
Ce script marche tres bien chez moi (IE 5):

<script language="javascript">
// Date.parse retourne le nombre de millisecondes depuis le 01/01/1970
var date1 = "12/04/99";
var date2 = "31/01/98";

if (Date.parse(date1) > Date.parse(date2)) {
document.write('date1 est superieure a date2');
}
else {
document.write('date2 est superieure a date1');
}
</script>
Photo de soho Message publié le mardi 11 décembre 2001 à 09 h 30 par soho. S [}:-] H [8] [(!)]
ARRGHHHH J'ai trouvé mon probleme (mais pas la solution).
Lors de la comparaison il utilise mes champs au format mm/dd/yy, donc c pour ca que ca ne fonctionne pas. [:-((] [:-(((]
Mais pour la suite de mon programme, il utilise le format dd/mm/yy.

Comment faire pour qu'il fasse la comparaison if (Date.parse(date1) > Date.parse(date2)) au format dd/mm/yy [(??)]
Photo de Toubiz Message publié le mardi 11 décembre 2001 à 09 h 51 par Toubiz.
<script language="javascript">
// date en mm/dd/yy
var date1n = "03/02/98";
var date2n = "04/01/98";

// converti en dd/mm/yy
var date1 = "";
var date2 = "";
date1 = eclate(date1n);
date2 = eclate(date2n);

alert(date1 + " <=> " + date2);

if (Date.parse(date1) > Date.parse(date2)) {
document.write('date1 est superieure a date2');
}
else {
document.write('date2 est superieure a date1');
}

function eclate(mydate) {

var dd = "";
var mm = "";
var yy = "";

// mm/dd/yy to dd/mm/yy
dd = mydate.substring(3, 5);
mm = mydate.substring(0, 2);
yy = mydate.substring(6, 8);
date_f = dd + "/" + mm + "/" + yy;
return date_f;
}

</script>
Photo de soho Message publié le mardi 11 décembre 2001 à 10 h 12 par soho. S [}:-] H [8] [(!)]
Nickel Toubiz (+) , t'es le meilleur [:D] (et en plus tu me sauves la vie [;-))] )

liste des forums liste des discussions Participer à la discussion

Vous devez obligatoirement vous identifier en tant que membre pour participer à cette discussion.

ACCÉS COMMUNAUTÉ

Rejoignez ALL HTML

Publiez vos articles, actualités, communiqués ... Donnez votre avis, partagez votre réseau, rencontrez d'autres membres et participez à la vie de la communauté.

Les 5 dernières discussions