Foros del Web » Programando para Internet » Javascript »

la validacion no hace el focus!

Estas en el tema de la validacion no hace el focus! en el foro de Javascript en Foros del Web. Hola a todos! Tengo un formulario: <form id="form" name="form" method="post" action="registrar.php"> <table width="100%" border="0" cellpadding="0" cellspacing="0"> <tr> <td width="35%" class="texto"><div align="right">Nombre</div></td> <td width="65%"><label> <input name="nombre" ...
  #1 (permalink)  
Antiguo 05/02/2009, 09:05
 
Fecha de Ingreso: marzo-2007
Mensajes: 83
Antigüedad: 17 años, 9 meses
Puntos: 0
la validacion no hace el focus!

Hola a todos!

Tengo un formulario:

<form id="form" name="form" method="post" action="registrar.php">
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="35%" class="texto"><div align="right">Nombre</div></td>
<td width="65%"><label>
<input name="nombre" type="text" class="texto" id="nombre" size="40" />
</label></td>
</tr>
<tr>
<td class="texto"><div align="right">Password</div></td>
<td><input name="pass" type="password" class="texto" id="pass" size="40" /></td>
</tr>
<tr>
<td colspan="2"><label>
<div align="center"> <br />
<input name="button" type="submit" class="texto" id="button" value="Enviar" onclick="valida_envia()" />
</div></label></td>
</tr>
</table>
</form>


Con dos campos, nombre y password. Simplemente estoy haciendo una comprovacion de que nombre no esta vacio con este codigo:


<script>
function valida_envia(){
//valido el nombre
if (document.form.nombre.value.length==0){
alert("Tiene que escribir su nombre")
document.form.nombre.focus()
return 0;
}
</script>


La comprovacion la hace bien, pero cuando me sale el alert diciendome el mensaje y le doy a aceptar, en vez de ponerse el focus en nombre, el formulario se envia. A que es debido? Porque no se pone el cursor en el campo 'Nombre'? (es una pagina en php, no se si influye..)

Gracias!
  #2 (permalink)  
Antiguo 05/02/2009, 10:32
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 11 meses
Puntos: 772
Respuesta: la validacion no hace el focus!

Hola ann_18

Quita el evento onclick del botón y utiliza el evento onsubmit del formulario:

Código javascript:
Ver original
  1. <form id="form" name="form" method="post" action="registrar.php" onsubmit="return valida_envia()">

Saludos,
  #3 (permalink)  
Antiguo 06/02/2009, 04:54
 
Fecha de Ingreso: marzo-2007
Mensajes: 83
Antigüedad: 17 años, 9 meses
Puntos: 0
Respuesta: la validacion no hace el focus!

Muchas 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 01:57.