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])));
} |
Partager