| 12
 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
 
 |  
 
function verif_date(input)
{
	var regex = new RegExp("[/-]");
	var date = input.split(regex);
	var nbJours = new Array('',31,28,31,30,31,30,31,31,30,31,30,31);
	var result = true;
 
	if ( date['2']%4 == 0 && date['2']%100 > 0 || date['2']%400 == 0 )
	nbJours['2'] = 29;
 
	if( isNaN(date['2']) )
		result=false;
 
	if ( isNaN(date['1']) || date['1'] > 12 || date['1'] < 1 )
		result=false;
 
	if ( isNaN(date['0']) || date['0'] > nbJours[Math.round(date['1'])] || date['0'] < 1 )
		result=false;
 
	return result;
}
 
 
function validateDateFormat(form) {
 
	var isValid = true;
	var dateToValid = form.dateNaissance.value; 	
 
	// Cas où la date n'est oas saisie (longueur = 0)
	if (dateToValid.length == 0)
	{
		isValid = true;
	}
	// Cas où la date saisie fait 8 caractères
	else if (dateToValid.length == 8)
	{
		dateTemp = dateToValid;
		dateToValid = dateTemp.substring(0,2) + "/" + dateTemp.substring(2,4) + "/"  + dateTemp.substring(4,8);
 
		isValid = verif_date(dateToValid);
		if (isValid) form.dateNaissance.value = dateToValid;
	}
	// Cas où la date saisie fait 10 caractères
	else if (dateToValid.length == 10)
	{
		isValid = verif_date(dateToValid);
	}
	// Cas où la date est non vide, ne fait ni 8, ni 10 caractères
	else {
		isValid = false;
		alert("La date doit etre de la forme ddMMyyyy ou dd/MM/yyyy");
	}
	return isValid;
} | 
Partager