Foros del Web » Programando para Internet » Javascript »

Problema validacion

Estas en el tema de Problema validacion en el foro de Javascript en Foros del Web. Hola a todos. Antes que nada, agradecer a todos aquellos que os molestéis únicamente en leer mi post, ya que es de un problema que ...
  #1 (permalink)  
Antiguo 10/04/2010, 11:41
 
Fecha de Ingreso: abril-2010
Mensajes: 9
Antigüedad: 14 años
Puntos: 0
Problema validacion

Hola a todos.

Antes que nada, agradecer a todos aquellos que os molestéis únicamente en leer mi post, ya que es de un problema que tengo.

Estoy haciendo como proyecto fin de carrera una pagina de comercio electrónico privada. Pero, a la hora de realizar el logeo, estoy validando mis campos con JavaScript (que no sean vacíos).

El caso es que el Java Script me va perfecto (me valida), pero no me hace la navegación a la siguiente pagina. Es decir, si relleno los campos de entrada del 'userName' y del 'userPass', me debería navegar a una pagina php donde se consulte con la BD.


Esta es mi funcion JavaScript:


<script language="javaScript" type="text/javascript">

function validaForm(f){

if ( f.inputName.value.length == 0 && f.inputPassword.value.length == 0)
{
alert("Tiene que escribir su nombre de usuario y su contraseña")
f.inputName.focus()
return false;
}

if ( f.inputName.value.length == 0)
{
alert("Tiene que escribir su nombre de usuario")
f.inputName.focus()
return false;
}

if ( f.inputPassword.value.length == 0)
{
alert("Tiene que escribir su contraseña")
f.inputPassword.focus()
return false;
}

f.submit()
return true;
}

Y este es mi formulario:


<form name="formLogin" method="post" onsubmit="return validaForm(document.formLogin);" action="validaDatos.php" enctype="application/x-www-form-urlencoded">


Nombre de usuario
<input name="inputName" type="text" value="Introduzca aqui su nombre de usuario" onclick="this.value=''"
size="32" maxlength="32" onfocus="if(this.value == 'Introduzca aqui su nombre de usuario')this.value=''"/>

Contraseña
<input name="inputPassword" type="password" value="" />

<input name="botonEnviar" type="button" onclick="validaForm(document.formLogin);" value="Entrar"/>

</form>



Creo que el problema debe estar en que onsubmit del form me está bloqueando el onclick del boton por mas vueltas que le he dado, no consigo verlo.

Alguien me puede ayudar??? Se lo agradeceria muchisimo

Gracias a todos !!!
  #2 (permalink)  
Antiguo 10/04/2010, 13:32
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: Problema validacion

Hola

¿Por que no lo haces con submit?. El único caso que has de usar un botón para validar un form es cuando el botón va ha llevar algún estilo, aunque tampoco es lo conveniente, a mi forma de ver

Código Javascript:
Ver original
  1. <script language="javaScript" type="text/javascript">
  2.  
  3. function validaForm(f){
  4.  
  5. if ( f.inputName.value.length == 0 && f.inputPassword.value.length == 0)
  6. {
  7. alert("Tiene que escribir su nombre de usuario y su contraseña")
  8. f.inputName.focus()
  9. return false;
  10. }
  11.  
  12. if ( f.inputName.value.length == 0)
  13. {
  14. alert("Tiene que escribir su nombre de usuario")
  15. f.inputName.focus()
  16. return false;
  17. }
  18.  
  19. if ( f.inputPassword.value.length == 0)
  20. {
  21. alert("Tiene que escribir su contraseña")
  22. f.inputPassword.focus()
  23. return false;
  24. }
  25.  
  26. return true;
  27. }
  28.  
  29. Y este es mi formulario:
  30.  
  31.  
  32. <form name="formLogin" method="post" onsubmit="return validaForm(this);" action="validaDatos.php">
  33.  
  34.  
  35. Nombre de usuario
  36. <input name="inputName" type="text" value="Introduzca aqui su nombre de usuario" onclick="this.value=''"
  37. size="32" maxlength="32" onfocus="if(this.value == 'Introduzca aqui su nombre de usuario')this.value=''"/>
  38.  
  39. Contrase&#241;a
  40. <input name="inputPassword" type="password" value="" />
  41.  
  42. <input name="botonEnviar" type="submit" value="Entrar"/>
  43.  
  44. </form>

PD: Te he quitado enctype, ya que no estás usando ningún campo file

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #3 (permalink)  
Antiguo 12/04/2010, 11:02
 
Fecha de Ingreso: abril-2010
Mensajes: 9
Antigüedad: 14 años
Puntos: 0
Respuesta: Problema validacion

Muchas gracias por tu respuesta, Adler.

Seguí tus consejos pero seguía sin funcionar, hasta que me di cuenta que los onFocus() de JavaScript no llevaban el ';'.
Se lo puse y ya me va perfectamente.

Muy amable tu respuesta y disculpa las molestias.
Un saludo guapo !!

Etiquetas: Ninguno
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 21:29.