Foros del Web » Programando para Internet » Javascript »

Problema con split()

Estas en el tema de Problema con split() en el foro de Javascript en Foros del Web. Hola, tengo un problema con un formulario y la validacion de una fecha de nacimiento. El código es este: Código HTML: <body> <form id= "formulario1" ...
  #1 (permalink)  
Antiguo 27/06/2008, 13:30
Avatar de FantasmaFito  
Fecha de Ingreso: junio-2007
Ubicación: Buenos Aires, Argentina
Mensajes: 118
Antigüedad: 16 años, 10 meses
Puntos: 0
Problema con split()

Hola, tengo un problema con un formulario y la validacion de una fecha de nacimiento. El código es este:

Código HTML:
 <body>
		<form id="formulario1">
			<input id="nacimiento" type="text" value="27/06/2008" onfocus="select();"><br>
			<input id="boton" type="button" value="Enviar datos" onclick="validar();"/><br />			
		</form>
		
		<script type=text/javascript>

		function validar(){
			var nacimiento=document.getElementById("nacimiento").value;
			var nacimientoOK=nacimiento.split("/");

			var diaOK=nacimiento[0];
			var mesOK=nacimiento[1];
			var anioOK=nacimiento[2];
			
			if(diaOK>31 || mesOK>12 || anioOK>=2008){
				alert("La fecha ingresada no es válida");
			}
			
		}	

		</script>
	</body> 
El tema es que no me separa la fecha en tres partes, me crea un array por cada uno de los numeros ingresados en el campo del formulario.
¿Qué puede estar sucediendo?
  #2 (permalink)  
Antiguo 27/06/2008, 14:01
 
Fecha de Ingreso: abril-2006
Mensajes: 75
Antigüedad: 18 años
Puntos: 0
Respuesta: Problema con split()

El problema es que no estas recuperando los datos de la variable que es



<html>
<head>
</head>
<body>
<form id="formulario1">
<input id="nacimiento" type="text" value="27/06/2008" onfocus="select();"><br>
<input id="boton" type="button" value="Enviar datos" onclick="validar();"/><br />
</form>

<script type=text/javascript>

function validar(){
var nacimiento=document.getElementById("nacimiento").v alue;
var nacimientoOK=nacimiento.split("/");

var diaOK=nacimientoOK[0];
var mesOK=nacimientoOK[1];
var anioOK=nacimientoOK[2];

if(diaOK>31 || mesOK>12 || anioOK>2008){
alert("La fecha ingresada no es válida");
}

}

</script>
</body>
</html>


espero te sirva un slaudo
  #3 (permalink)  
Antiguo 27/06/2008, 14:46
Avatar de FantasmaFito  
Fecha de Ingreso: junio-2007
Ubicación: Buenos Aires, Argentina
Mensajes: 118
Antigüedad: 16 años, 10 meses
Puntos: 0
Respuesta: Problema con split()

Mmm... disculpa, no te entendi...
  #4 (permalink)  
Antiguo 27/06/2008, 14:50
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: Problema con split()

Cita:
Iniciado por FantasmaFito Ver Mensaje
Mmm... disculpa, no te entendi...
Lo que te quiso decir es que asignaste el split a la variable nacimientoOK mientras que estás intentado recuperar los datos de la variable nacimiento...

Tú has colocado:
var diaOK=nacimiento[0];
var mesOK=nacimiento[1];
var anioOK=nacimiento[2];

Mientras que nuestro amigo eduardo1983 te ha dicho acertadamente que debería ser:
var diaOK=nacimientoOK[0];
var mesOK=nacimientoOK[1];
var anioOK=nacimientoOK[2];

Saludos
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 27/06/2008, 15:00
Avatar de FantasmaFito  
Fecha de Ingreso: junio-2007
Ubicación: Buenos Aires, Argentina
Mensajes: 118
Antigüedad: 16 años, 10 meses
Puntos: 0
Respuesta: Problema con split()

Jeje, muchisimas gracias a los dos, sinceramente no me daba cuenta y era una pavada
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 12:19.