Salut
J'ai besoin d'effectuer un contrôle sur la date saisie dans un formulaire. je ne suis pas arrivée à vérifier cette condition: la date saisie soit supérieure à la date actuelle. comment faire?
merci pour 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
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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
 
function surligne(champ, erreur)
{
   if(erreur)
      champ.style.backgroundColor = "#fba";
   else
      champ.style.backgroundColor = "";
}
 
function verifDate(champ){
 
	var dateJour = new Date();
	//var messretour = "La date saisie est incorrect\nLa date doit être saisie dans l'ordre suivant AMJ\nelle doit être ultèrieur à la date actuelle "
     //   + dateJour.getFullYear() + '-' + (dateJour.getMonth()+1) + '-' + dateJour.getDate();
 
	champ.value = champ.value.replace("-","");
	//vérifier taille date
	if (champ.value.length != 8){
		 surligne(champ, true);
	      return false;
	}
 
	//controle caractère numérique
	if (IsNumeric(champ.value) == false){
		 surligne(champ, true);
	      return false;
	}
	var aaaa = champ.value.substring(0,4);
	var mm = champ.value.substring(4,2);
	var jj = champ.value.substring(4,2);
//	var datenew = aaaa+'-'+mm+'-'+jj;
 
	d2 = new Date(0);
	d2.setFullYear(aaaa, mm-1, jj);
 
//	if (isDateValid(datenew) == false){
	//	 surligne(champ, true);
	  //    return false;
	//}
 
	var dates = new Date(aaaa,mm-1,jj);
//	var datesaisie =dates.getTime();
	// var dateMini = dateJour.getTime();
 
	//Controle date supérieure à la date actuelle
	if (d2 <= dateJour )
		{
		 surligne(champ, true);
	      return false;
 
		}
 
 
	}
function IsNumeric(x)
{
var checkOK = "0123456789-";
  var checkStr = x;
  var allValid = true;
 
  var i,j;
  var allNum = "";
  for (i=0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j=0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
    allNum += ch;
  }
  if (!allValid)
  {
  return (false);
  }
  return (true);
 
}
function isDateValid(chaineDate) {
 
// CONTROLE LA VALIDITE D UN CHAMP DATE
//alert(chaineDate);
   if (chaineDate == "") return false;
   var ladate = (chaineDate).split("-");
 
   if ((ladate.length != 3) || isNaN(parseInt(ladate[0])) || isNaN(parseInt(ladate[1])) || isNaN(parseInt(ladate[2]))) return false;
 
   var unedate = new Date(eval(ladate[0]),eval(ladate[1])-1,eval(ladate[2]));
 
   var annee = unedate.getYear();
   if ((Math.abs(annee)+"").length < 4) annee = annee + 1900;
   //return(true);
   return ((unedate.getDate() == eval(ladate[2])) && (unedate.getMonth() == eval(ladate[1])-1) && (annee == eval(ladate[0])));
}