Hola a todos; mi problema es que estoy intentando validar un formulario en JS; el problema es que tengo 6 campos para validar; pero me valida uno a la vez; es decir, supongan que tenemos un campo nick y otro contraseña; las condiciones serían que si nick es menor a 3, devuelva falso y que si contraseña es menos a 5 devuelva false y en los dos casos se vea un error; el punto es que si en nick ponemos dos caracteres (error) y en contraseña ponemos menos de 5 caracteres (error), solo salta el error del nick, pero una vez que se ingresa más de 3 caracteres en el nick, recien ahí salta el error de la conrtaseña.
Me gustaría que me ayuden a que los errores salgan todos a la vez; muchas gracias:
HTML:
<form name="inicioRegistro" id="incioRegistro" method="post" action="procesar_usuario.php" onsubmit="return validar()">
<table>
<tr>
<td><p align="right">Nick: </p></td>
<td height="40px"><input type="text" name="nick" height="30px" id="nick"/></td>
<td><p id="nm3" style="visibility:hidden; display:none; color:red; font-family:Arial, Helvetica, sans-serif;">El nick debe constar de más de 3 cifras.</p></td>
</tr>
<tr>
<td><p align="right">Nombre: </p></td>
<td height="40px"><input type="text" name="nombre" id="nombre"/></td>
</tr>
<tr>
<td><p align="right">Apellidos: </p></td>
<td height="40px"><input type="text" name="apellido" id="apellido"/></td>
</tr>
<tr>
<td><p align="right">Password: </p></td>
<td height="40px"><input type="password" name="contraseña" id="contraseña"/></td>
<td><p id="ccl" style="visibility:hidden; display:none; color:red; font-family:Arial, Helvetica, sans-serif;">La contraseña debe de constar de un mínimo de 5 carácteres y un máximo de 16</p></td>
</tr>
<tr>
<td><p align="right">Repetir password: </p></td>
<td height="40px"><input type="password" name="contraseña2" id="contraseña2"/></td>
<td><p id="cnc" style="visibility:hidden; display:none; color:red; font-family:Arial, Helvetica, sans-serif;">Las contraseñas deben de coincidir.</p></td>
</tr>
<tr>
<td><p align="right">Email: </p></td>
<td height="40px"><input type="text" name="email" id="email"/></td>
</tr>
<tr>
<td><input type="submit" value="registrate"/></td>
</tr>
</table>
</form>
JS:
<script language="javaScript">
function validar(){
var nick= document.getElementById('nick');
var nombre= document.getElementById('nombre');
var apellido= document.getElementById('apellido');
var contraseña= document.getElementById('contraseña');
var contraseña2= document.getElementById('contraseña2');
var email= document.getElementById('email');
if(nick.value.length<3){
document.getElementById('nm3').style.visibility='v isible';
document.getElementById('nm3').style.display='bloc k';
return false;
}
else
if(contraseña.value.length<5){
document.getElementById('ccl').style.visibility='v isible';
document.getElementById('ccl').style.display='bloc k';
return false;
}
else
if (contraseña.value!=contraseña2.value){
document.getElementById('cnc').style.visibility='v isible';
document.getElementById('cnc').style.display='bloc k';
return false;
}
return true;
}
</script>
Muchas gracias a todos, espero respuestas.