Foros del Web » Programando para Internet » Javascript »

problema con el tabulador

Estas en el tema de problema con el tabulador en el foro de Javascript en Foros del Web. Hola a ver que podeis hacer por mi, os cuento: Tengo un formulario y como es costumbre cada vez que se da al tabulador pasa ...
  #1 (permalink)  
Antiguo 11/06/2003, 06:53
 
Fecha de Ingreso: marzo-2003
Ubicación: debajodelpuente
Mensajes: 41
Antigüedad: 22 años
Puntos: 0
problema con el tabulador

Hola a ver que podeis hacer por mi, os cuento:

Tengo un formulario y como es costumbre cada vez que se da al tabulador pasa de un edit a otro, hasta ahi todo bien, pero yo he hecho una funcion que se la llama en el onchange del edit:

<input type="Text" maxlength="2" onkeypress="soloNumeros()" onchange="enfocar(HoraIni.value)" name="HoraIni" id="HoraIni" onFocus="hilight(this)" onBlur="fade(this)" size="2" class="cbAzul">:<input type="Text" name="MinIni" id="MinIni" onFocus="hilight(this)" onBlur="fade(this)" size="2" class="cbAzul">


esa funcion es :


<script language="JavaScript1.2">
function enfocar(hora){

if ((hora<0) || (hora>23))
{
alert("Hora erronea"); //la hora NO valida
document.Form1.HoraIni.focus();
document.all("HoraIni").value="";
}

}
</script>

Si pincho con el raton en otro lugar si me pone el foco donde le pido pero si le doy al tabulador lo primero que hace es enseñar el mensage de error luego se posiciona donde le pido y despues me pasa al siguiente edit

mi pregunta es ¿COMO PUEDO HACER PARA QUE SE QUEDE EL FOCO DONDE LE DIGO Y NO SALTE AL SIGUIENTE EDIT?

Espero que me podais ayudar

Bea
  #2 (permalink)  
Antiguo 11/06/2003, 07:05
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 23 años, 1 mes
Puntos: 772
Hola, bea0013.

Prueba haciendo estos cambios:

<input type="Text" maxlength="2" onchange="return enfocar(HoraIni.value)"...

y en la función:

if ((hora<0) || (hora>23))
{
alert("Hora erronea"); //la hora NO valida
document.Form1.HoraIni.focus();
document.all("HoraIni").value="";
return false;
}

Suerte. Saludos,
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 18:30.