A voir également:
- Javascript :
- Telecharger javascript - Télécharger - Langages
- Javascript echo ✓ - Forum PHP
- Node.js javascript runtime virus ✓ - Forum Virus
- Erreur #125 javascript - Forum Mozilla Firefox
- A javascript error occurred in the main process - Forum Handicap / Accessibilté
1 réponse
Marco la baraque
Messages postés
996
Date d'inscription
vendredi 9 mai 2008
Statut
Contributeur
Dernière intervention
5 novembre 2009
329
21 janv. 2009 à 22:08
21 janv. 2009 à 22:08
Bonsoir Crazy,
Tu n'est pas très loin, tu n'as fait qu'une seule erreur en fait.
En javascript, tu peux utiliser les opérateurs de comparaison (>, <, = ...) sur les chaînes. Ca va comparer les valeurs des codes ascii des caractères de ces chaînes.
Exemple :
"a" < "b"
"b" < "g"
"ab" < "ac"
Ton script ne fonctionne pas car tu fais :
if (date >= "15 janvier 2009" && date <= "25 janvier 2009") par exemple.
Ca ne va pas comparer la valeur des dates, mais les chaînes que tu affiches. Par exemple "16 décembre 2008" >= "15 janvier 2009" retourne vrai.
La solution, c'est d'utiliser l'objet Date de javascript, et de comparer les millisecondes représentant cet objet (via la méthode getTime()).
Pour plus d'informations, je te conseille de lire ceci : http://www.commentcamarche.net/contents/javascript/jsdate.php3.
Ca t'explique notamment comment créer un objet date pour une date données (le 15 janvier 2009 par exemple).
Pour l'insertion d'un script dans ta page html, il faut faire <script language="javascript" src="toto.js"></script> si ton fichier toto.js est à la racine.
Cordialement,
Tu n'est pas très loin, tu n'as fait qu'une seule erreur en fait.
En javascript, tu peux utiliser les opérateurs de comparaison (>, <, = ...) sur les chaînes. Ca va comparer les valeurs des codes ascii des caractères de ces chaînes.
Exemple :
"a" < "b"
"b" < "g"
"ab" < "ac"
Ton script ne fonctionne pas car tu fais :
if (date >= "15 janvier 2009" && date <= "25 janvier 2009") par exemple.
Ca ne va pas comparer la valeur des dates, mais les chaînes que tu affiches. Par exemple "16 décembre 2008" >= "15 janvier 2009" retourne vrai.
La solution, c'est d'utiliser l'objet Date de javascript, et de comparer les millisecondes représentant cet objet (via la méthode getTime()).
Pour plus d'informations, je te conseille de lire ceci : http://www.commentcamarche.net/contents/javascript/jsdate.php3.
Ca t'explique notamment comment créer un objet date pour une date données (le 15 janvier 2009 par exemple).
Pour l'insertion d'un script dans ta page html, il faut faire <script language="javascript" src="toto.js"></script> si ton fichier toto.js est à la racine.
Cordialement,
21 janv. 2009 à 22:25
Je m'accroche pour essayer de bien la comprendre (c'est la première fois de ma vie que j'utilise du Javascript alors c'est un peu un jeu de "devinette" pour moi) et je vais aller lire le lien que tu me donnes. Puis essayer de trouver comment on manipule "getTime" et à quel endroit. A dans... une semaine (me faudra bien ça :-) ).
Merci encore.