Foros del Web » Programando para Internet » Javascript »

focos mozilla

Estas en el tema de focos mozilla en el foro de Javascript en Foros del Web. tengo un problema, necesito usar el tabulador para validar y en caso de que el dato introducido sea erroneo que el foco se posicione en ...
  #1 (permalink)  
Antiguo 12/05/2005, 00:18
 
Fecha de Ingreso: diciembre-2003
Mensajes: 15
Antigüedad: 20 años, 4 meses
Puntos: 0
focos mozilla

tengo un problema, necesito usar el tabulador para validar y en caso de que el dato introducido sea erroneo que el foco se posicione en la caja de texto
Con explorer ya esta pero con mozzilla no puedo. Ideas???
  #2 (permalink)  
Antiguo 12/05/2005, 00:57
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola crisberand

¿Has probado con...?

document.nombreFormulario.nombreControl.focus();

Saludos,
  #3 (permalink)  
Antiguo 12/05/2005, 02:11
 
Fecha de Ingreso: diciembre-2003
Mensajes: 15
Antigüedad: 20 años, 4 meses
Puntos: 0
si pero no me funciona en mozilla , me manda al elemento siguiente, he decubierto que si le introduzco un alert hay retraso y si se me posiciona bien el foco, pero yo no quiero meter un alert

Opciones??
  #4 (permalink)  
Antiguo 12/05/2005, 02:41
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola de nuevo.

¿Puedes poner el código que estás usando o lo tienes en algún sitio donde podamos verlo?

Saludos,
  #5 (permalink)  
Antiguo 09/01/2006, 08:18
 
Fecha de Ingreso: julio-2005
Mensajes: 31
Antigüedad: 18 años, 9 meses
Puntos: 0
Aunque sea un poco tarde...

... yo me he encontrado con el mismo problema y me ha costado bastante encontrar una solución correcta, por eso contesto en este mismo mensaje.

La solución pasa por meter dentro de un setTimeout la llamada al método focus() de esta forma:

Código:
setTimeout("document.getElementsByName('nameDeInput')[0].focus();",0)
En este caso he utilizado el "getElementsByName" porque el input en el que tenía que hacer el foco no tenía el atributo "id", pero también debería de valer con "getElementById"

Espero que os sirva.
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 13:10.