Foros del Web » Programando para Internet » Javascript »

Drop Down de select para fecha de nacimiento

Estas en el tema de Drop Down de select para fecha de nacimiento en el foro de Javascript en Foros del Web. Buenas tardes! como andan? Tengo un problemita, se poco de javascript, no lo suficiente como para poder hacer esto yo mismo , lamentablemente. Tengo un ...
  #1 (permalink)  
Antiguo 20/04/2010, 10:20
 
Fecha de Ingreso: julio-2009
Ubicación: Argentina!
Mensajes: 324
Antigüedad: 14 años, 9 meses
Puntos: 4
Drop Down de select para fecha de nacimiento

Buenas tardes! como andan?

Tengo un problemita, se poco de javascript, no lo suficiente como para poder hacer esto yo mismo , lamentablemente.

Tengo un formulario de registro en php y para el campo donde uno pone su fecha de nacimiento tengo unos feos input text! Ya sabiendo que si el usuario quiere poner como nacimiento el dia 99 del mes 99 del año 9999 lo permite! Cosa que esta muuy mal! entonces recorde que casi en todos los formularios de registro se utiliza el famoso Drop Down Select Date! algo fantastico, pero en un lenguaje que entiendo muy poco.

Busque por internet y me tope con varios pero que no refrescan el campo dia cuando uno selecciona el mes (Mes de 31 dias y tengo opcion solo para 30!) entonces busque y segui buscando, encontre un total de 0! Obvio que busque mal, porq no puede ser que no haya encontrado ni 1! pero bueno...

alguien vio, tiene, o conoce alguno de estos Drop Down Select Date? mi fuerte es php pero no es posible hacerlo ya que es del lado del servidor y javascript del lado del cliente!

Espero que puedan ayudarme!
Desde ya muchas gracias.!
  #2 (permalink)  
Antiguo 20/04/2010, 18:28
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: Drop Down de select para fecha de nacimiento

jscalendar es una excelente solución, solo debes de bloquear los input (readonly="readonly")

para hacerlo simple, siempre se usa un input, y no 3, es mejor y más comodo, de todas formas puedes programar para que te separe las fecha en 3, pero esto requiere programarlo en js y créeme, no te hace falta

jscalendar te permite configurarlo como lo desees, con el formato que quieras, es realmente muy practico.
  #3 (permalink)  
Antiguo 21/04/2010, 06:30
 
Fecha de Ingreso: julio-2009
Ubicación: Argentina!
Mensajes: 324
Antigüedad: 14 años, 9 meses
Puntos: 4
Respuesta: Drop Down de select para fecha de nacimiento

Cita:
Iniciado por maycolalvarez Ver Mensaje
jscalendar es una excelente solución, solo debes de bloquear los input (readonly="readonly")

para hacerlo simple, siempre se usa un input, y no 3, es mejor y más comodo, de todas formas puedes programar para que te separe las fecha en 3, pero esto requiere programarlo en js y créeme, no te hace falta

jscalendar te permite configurarlo como lo desees, con el formato que quieras, es realmente muy practico.
Te agradezco muchisimo el enlace! Pero para el estilo de mi pagina creo que no va (Igualmente lo pienso utilizar en otro proyecto un poco mas juvenil). Me gusto mucho en verdad!

Pero encontre este otro que me parece que va a quedar bien en mi sitio, solo tengo un problema, no me funciona cuando lo pongo dentro del codigo de mi pagina, la verdad no se porque. Ya le hice unas modifcaciones muy basicas pero hay algo que no logro hacer, si se fijan, en el body carga la funcion populate(form1) y quiero hacer que la cargue pero no dentro de la etiqueta body, sino en cualquier otro lado, ya probe: <script>populate('form1');</script> y nada. alguien sabe que deberia hacer?? aca les dejo el script

Código HTML:
<HEAD>
<Script Language="JavaScript">
function populate(inForm)
{
var temp=0;
var today= new Date();
var day= today.getDate();
var month= today.getMonth();
var year= today.getFullYear();
t2= "150";



for (var i=0; i <31 ; i++)
	{
	var x= String(i+1);
	
	inForm.day.options[i] = new Option(x,x);
	}

for (var i=0; i <31 ; i++)
	{
	var d=0;
	d=inForm.day.options[i].value;
	if(d=day){
		inForm.day.options[i].selected=true;
		break;}
	}

for (var i=0,j=year; i <t2 ; i++, j--)
	{
	var y= String(j);
	inForm.year.options[i] = new Option(y,y);
		
	}
for(var i=0;i<12;i++)
	{
	
	if(i=month)
		{inForm.month.options[i].selected=true;
	break;}
	
	}

}

function populate2(inForm2)
{
var t3=0;


if(inForm2.month.options[1].selected)

t3=28;
else if(inForm2.month.options[8].selected||inForm2.month.options[3].selected||inForm2.month.options[5].selected||inForm2.month.options[10].selected)
t3=30;
else
t3=31;


for(i=0;i<31;i++){
inForm2.day.options[i]=null;
}

for (var i=0; i <t3 ; i++)
	{
	var x= String(i+1);
	inForm2.day.options[i] = new Option(x);
		
	}
}
</script>

</HEAD>
<BODY onLoad=populate(form1)>
<FORM NAME="form1">
<p>
<b>Mes</b>    
<SELECT NAME="month" onChange = populate2(form1)>
<Option value="Enero">Enero</Option>
<Option value="Febrero">Febrero</Option>
<Option value="Marzo">Marzo</Option>
<Option value="Abril">Abril</Option>
<Option value="Mayo">Mayo</Option>
<Option value="Junio">Junio</Option>
<Option value="Julio">Julio</Option>
<Option value="Agosto">Agosto</Option>
<Option value="Septiembre">Septiembre</Option>
<Option value="Octubre">Octubre</Option>
<Option value="Noviembre">Noviembre</Option>
<Option value="Diciembre">Diciembre</Option>
</SELECT>
<b>Dia</b>  
<SELECT NAME="day"></SELECT>  
<b>Anio</b>
<SELECT NAME="year"></SELECT>
</FORM> 
Ha, ademas de que no tiene que estar dentro de un form ya que mi formulario (Valga la redundancia) es un form, y quedaria un form dentro de otro form.

Un abrazo
  #4 (permalink)  
Antiguo 23/04/2010, 06:21
 
Fecha de Ingreso: julio-2009
Ubicación: Argentina!
Mensajes: 324
Antigüedad: 14 años, 9 meses
Puntos: 4
Respuesta: Drop Down de select para fecha de nacimiento

Alguien tiene alguno idea? o conoce donde hay algo asi?

Desde ya muchas gracias.

Etiquetas: drop, select, fechas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:23.