Bonjour.
J'ai récupéré une fonction qui permet d'afficher le nombre de jours entre aujourd'hui et une date future.
Ce code utilise un formulaire et des input pour effectuer les calculs et afficher le nombre de jours.
Je voudrais pouvoir effectuer tous les calculs sans utiliser ni de formulaire ni les input mais uniquement des variables pour pouvoir mettre la fonction dans un fichier .js et l'appeler à l'ouverture de ma page.
Donc si quelqu'un peut m'aider, voici le code que j'ai déjà un peu modifier mais qui marche:
Merci d'avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65 <script language="JavaScript"> function annee(an) { if ((navigator.appName == "Netscape") && (parseFloat(navigator.appVersion) >= 4.06)) an = eval(an + 1900); return an; } function completeA2(nombre) { return ((nombre <= 9) ? "0" : "") + nombre; } function afficheDate() { var jour = new Date(); document.formulaire.date1.value = (completeA2(jour.getDate()) + "/" + completeA2(jour.getMonth()+1) + "/" + annee(jour.getYear())); return (completeA2(jour.getDate()) + "/" + completeA2(jour.getMonth()+1) + "/" + annee(jour.getYear())); } function formatDate(chaine) { var ctl = /^(\d\d?)\/(\d\d?)\/(\d\d)(\d\d)?$/; var tab = ctl.exec(chaine); if (tab.length) { this.jour = tab[1]; this.mois = tab[2] - 1; if (tab.length > 4) this.an = (tab[4]) ? tab[3] + tab[4] : 2000 + eval(tab[3]); else this.an = 2000 + eval(tab[3]); this.OK = true; } else this.OK = false; } function nombreJours(autreDate) { if (this.OK) { var date1 = new Date(this.an, this.mois, this.jour); if (autreDate.OK) var date2 = new Date(autreDate.an, autreDate.mois, autreDate.jour); else return "erreur"; } else return "erreur"; if (date1.getTime() < date2.getTime()) return Math.floor((date2.getTime() - date1.getTime()) / 1000 / 60 / 60 / 24); else return Math.floor((date1.getTime() - date2.getTime()) / 1000 / 60 / 60 / 24); } formatDate.prototype.nombreJours = nombreJours; function calcDuree(case1, case2){ if ((document.formulaire[case1].value == "") || (document.formulaire[case2].value == "")) document.formulaire.duree.value = ""; else { d1 = new formatDate(document.formulaire[case1].value); d2 = new formatDate(document.formulaire[case2].value); return d1.nombreJours(d2); } } </script> <BODY> <form name="formulaire"> <input type="hidden" name="date1" size=0 value=""> <input type="hidden" name="date2" size=0 value="10/06/2006"> <input type="hidden" name="duree" size=10 value=""> </form> Nous sommes le <script>document.write( afficheDate());</script> <br> Il reste <b> <script>document.write( calcDuree('date1', 'date2'));</script></b> jours jusqu'au 10/06/2006
Partager