// JavaScript Document



function esBisiesto(ano)
{
	return ((ano%4==0 && ano%100!=0)||(ano%400==0)?true:false)
}

function llenarDias(ano, mes, dia)
{	
	var valMes, valAno, indiceCbo, i, n, cboAno, cboMes, cboDia, carMes
	
	cboDia=document.getElementById(dia)
	cboMes=document.getElementById(mes)
	cboAno=document.getElementById(ano)
	
	//se eliminan todos los elementos del combo 'Día'
	n=cboDia.options.length
	for (i=n-1; i>=0; i--)
		cboDia.options[i] = null
	
	//se llena el combo 'Día' con valores del 1 al 28
	for (i=1; i<=28; i++)
		cboDia.options[i-1]=new Option (String(i),String(i))//String() para convertir en cadena un número
	
	//se obtiene el valor del mes
	indiceCbo=cboMes.selectedIndex//índice de la opción seleccionada
	valMes=parseInt(cboMes.options[indiceCbo].value) //parseInt() para convertir en número una cadena
	
	//se obtiene el valor del año
	indiceCbo=cboAno.selectedIndex //índice de la opción seleccionada
	valAno=parseInt(cboAno.options[indiceCbo].value)
	
	i=29
	if (valMes==2) //si el mes es febrero
	{
		if (esBisiesto(valAno)) //si el año es biciesto se agrega 1 días más al combo 'Día' para que llegue a 29
			cboDia.options[i-1]=new Option (String(i),String(i))
	}
	else
	{
		if ((valMes%2==0||valMes>=8)&&(valMes%2!=0||valMes<=7 )) //si el mes es abril, junio, septiembre o noviembre
		{
			//se agregan 2 días más al combo 'Día' para que llegue a 30
			for (i=29; i<=30; i++)
				cboDia.options[i-1]=new Option (String(i),String(i))
		}
		else
		{
			if ((valMes%2!=0&&valMes<8)||(valMes%2==0&&valMes>7)) //si el mes es enero, marzo, mayo, julio, agosto, octubre o diciembre
			{
				//se agregan 3 días más al combo 'Día' para que llegue a 31
				for (i=29; i<=31; i++)
					cboDia.options[i-1]=new Option (String(i),String(i))
			}
		}
	}
}
