Foros del Web » Programando para Internet » Javascript »

validaciones

Estas en el tema de validaciones en el foro de Javascript en Foros del Web. buenas estoy aprendiendo js y bueno haciendo un fórmulario simple con algunas validaciones me ocurre que cuando me da varios errores el formu.. y corrijo ...
  #1 (permalink)  
Antiguo 22/05/2011, 13:00
 
Fecha de Ingreso: diciembre-2010
Mensajes: 166
Antigüedad: 13 años, 3 meses
Puntos: 0
validaciones

buenas estoy aprendiendo js y bueno haciendo un fórmulario simple con algunas validaciones me ocurre que cuando me da varios errores el formu.. y corrijo sólo uno no me desaparece el error a menos que corrija todo el formu alguien sabe porqué? si tengo que hacerlo de otra manera .. agradezco cualquier tipo de ayuda.

Código:
<html>
	<head>
	<link rel="stylesheet" href="formu.css" type="text/css">
	<title>
		Fórmulario - Datos personales
	</title>
	<script language="javascript">
	<!--
	function valida()
		{
		errores=0;

				if((document.registro.nombre.value.length<4)||(document.registro.nombre.value.length>8))
					{

					document.getElementById("nombre").style.borderColor="red";
					document.getElementById("er_name").innerHTML = (" &nbsp&nbsp Este campo a de tener entre 4 y 8 caracteres");
					errores++;
					}
				if(document.registro.nombre.value=="")
					{
					document.getElementById("nombre").style.borderColor="red";
					document.getElementById("er_name").innerHTML = (" &nbsp&nbsp Este campo es obligatorio");
					errores++;
					}
				if(document.registro.apellidos.value=="")
					{
					document.getElementById("apellidos").style.borderColor="red";
					document.getElementById("er_ape").innerHTML = (" &nbsp&nbsp Este campo es obligatorio");
					errores++;
					}

		if(errores!="0")
			{
			return false;
			}

			else
				return true;


		}
	//-->>
	</script>

	</head>
<body>
<h2>Datos nuevo usuario</h2>
<br>
<form name="registro" method="post" onSubmit="return valida()">
<Fieldset style="margin:auto;">
	<legend>Registro nuevo usuario</legend>

						<label for="nombre">Nombre: </label><input type="text" id="nombre" name="nombre">  <span id="er_name" style="color: red;font-weight:bold;"></span><br>
						<label for="apellidos">Apellidos: </label><input type="text" id="apellidos" name="apellidos"><span id="er_ape" style="color: red;font-weight:bold;"></span><br>
						<label for="edad">Fecha Nacimiento: </label><input type="text" id="edad" size="8"><br>
						<label for="mail">E-Mail: </label><input type="text" id="mail" name="mail"><br>
						<label for="username">Nombre Usuario: </label><input type="text" id="username" name="username"><br>
						<label for="password">Contraseña: </label><input type="password" id="password" name="password"><br>
						<input type="submit" value="enviar">

</fieldset>
</form>
  #2 (permalink)  
Antiguo 22/05/2011, 14:20
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: validaciones

lo primero que es que la variable errores es global, hazla local con la palabra reservada "var". después, no te desaparece el error, por que has insertado una cadena en los span cuando se ha producido un error, pero no estás haciendo nada cuando ese error ha sido corregido.
has de limpiar la cadena de los span, usando un else e innerHTML

Etiquetas: validar
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 22:23.