Hola Amig@s:
Acabo de empezar a hacer páginas web y me encuentro con uno de esos fallos de novato que no sé exactamente donde está.
Pretendo validar tanto, el nombre del usuario, que en este caso es un correo electrónico, como la contraseña que introduzca el cliente. No sé por qué aún escribiendo una dirección de correo correcta me lanza el mensaje de que es incorrecto el nombre de usuario.
Por ignorancia he creado tres formularios en la misma página para la entrada de cada uno de los datos. Uno para el campo Usuario del formulario, otro para el campo contraseña del formulario y otro para el botón de enviar.
Este es el código HTML que he puesto:
<td><div align="right">Usuario</div></td>
<td><form id="form2" name="form2" method="post" action="">
<label>
<input type="text" name="Usuario" id="Usuario" />
</label>
</form></td>
...
<td><div align="right">Contraseña</div></td>
<td><form id="form3" name="form3" method="post" action="">
<label>
<input type="password" name="contraseña" id="contraseña" />
</label>
</form></td>
...
<td colspan="2"><form id="form1" name="form1" method="post" action="" onsubmit="return ValidarUsuario() && Validarcontraseña()" >
<label>
<div align="center">
<input type="submit" name="Entrar" id="Entrar" value="Entrar" />
</div>
</label>
</form></td>
Y este es el código JavaScript:
function ValidarUsuario()
{
valor = document.getElementById("Usuario").value;
if (document.form2.Usuario.value.length==0)
{
alert('Introduzca su email');
document.form2.Usuario.focus();
}
else
if( !(/^\w+([\-_.]?\w+)*@\w+([\-_.]?\w+)*(\.\w{2,3,4})+$/.test(valor)) )
{
alert('Usuario no registrado');
document.form2.Usuario.focus();
}
else
{
return true;
}
}
function ValidarContraseña()
{
if (document.form3.contraseña.value.length>8)
{
alert('Contraseña incorrecta');
contraseña.focus();
contraseña.select();
}
else
return true
}
//-->
</script>
Supongo que es algo muy sencillo pero no doy con ello ... me echáis una mano?Gracias!