Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/11/2003, 06:12
Avatar de fjmasero
fjmasero
 
Fecha de Ingreso: diciembre-2002
Mensajes: 488
Antigüedad: 21 años, 5 meses
Puntos: 1
cambiar el foco

Wenas:

Tengo una página en la q hay un formulario.

Es preciso q el foco lo tenga al cargarse la pagina un campo determinado, para lo cual, se pone <body onLoad="documento.formulario.campo.focus();">.

Hasta aquí todo normal.

Pero también hay una funcionalidad en la que despues de un submit, y si la validación del formulario produce un error, hay q volver a cargar el formulario y seleccionar el campo q genera el error.

Digo volver a cargar la página pq es así, ya que la validación se hace a través de dll en VisualBasic, q devuelve si/no hay errores.

La cuestión es que si en el body hay un onLoad con un focus a un campo del formulario, lo ejecuta, pero si más adelante hay un script con un select() y un focus() a un campo diferente al que hay en el onLoad, no lo hace.

Para probarlo, he hecho un pagina de prueba y lo confirma.
Código:
<html>
 <body onLoad="document.form.dos.focus();">
  <form action="" name="form" id="form">
   uno<input type="text" name="uno"><br>
   dos<input type="text" name="dos">
  </form>
  <script>document.form.uno.focus();</script>
 </body>
</html>
A pesar del script final, el campo que coge el foco es dos.

¿A alguién se le ocurre como solucionarlo?.

Salu2 y gracias
__________________
No es sabio el que sabe sino el que no sabe y quiere aprender

Última edición por fjmasero; 04/11/2003 a las 06:15