Foros del Web » Programando para Internet » Javascript »

Validación de Formulario sin enviarlo

Estas en el tema de Validación de Formulario sin enviarlo en el foro de Javascript en Foros del Web. Hola a todos. El problema que tengo es que he puesto un script para que al enviar el formulario valide un campo. El tema está ...
  #1 (permalink)  
Antiguo 04/09/2004, 16:20
 
Fecha de Ingreso: diciembre-2003
Mensajes: 23
Antigüedad: 20 años, 4 meses
Puntos: 0
Validación de Formulario sin enviarlo

Hola a todos. El problema que tengo es que he puesto un script para que al enviar el formulario valide un campo. El tema está en que, sea correcta o no la información introducida, siempre se envía el formulario. Evidentemente, si el contenido del formulario es incorrecto y no cumple la cláusula establecida, no debería de enviarse.

El código que tengo es el siguiente:

Código:
// Funciones para la comprobación de datos
function comprobar(){
	var cadena = document.frm.id.value ;
	if(cadena.charAt(0) == 0){
		alert('El número de ID no puede comenzar por 0');
		return (false);
	}
}
He probado también con
Código:
return flase;
, pero obtengo el mismo resultado. ¿Alguien sabe lo que falla? A la función la llamo desde el evento onSubmit del formulario.

Muchas gracias de antemano.
  #2 (permalink)  
Antiguo 04/09/2004, 19:21
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 4 meses
Puntos: 98
No soy experto en javascript ni mucho menos, pero andaba husmeando, puede ser el onsubmit no? por qué no lo haces desde el evento onclick?
Y bueno si estás evaluando un caractér, supongo que debe ser de tipo 'char' el valor que evalúe el if...

// Funciones para la comprobación de datos
function comprobar(){
var cadena = document.frm.id.value ;
if(cadena.charAt(0) == '0'){
alert('El número de ID no puede comenzar por 0');
return (false);
}
}

A ver si funciona...

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #3 (permalink)  
Antiguo 05/09/2004, 03:14
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola rubo.

Prueba con esto:

<form name="frm" onsubmit="return comprobar()">

La forma correcta de devolver false es la segunda opción que has puesto: return false;

Espero que te funcione. Saludos,
  #4 (permalink)  
Antiguo 05/09/2004, 05:45
 
Fecha de Ingreso: diciembre-2003
Mensajes: 23
Antigüedad: 20 años, 4 meses
Puntos: 0
Gracias !!

Muchas gracias a los dos por vuestras respuestas.

Al final me ha funcionado la de JavierB. Poniendo el return en el evento onSubmit.

Lo dicho, muchísimas gracias.
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 07:49.