Foros del Web » Programando para Internet » Javascript »

Como saltar un campo oculto con tabulador "enter" ?

Estas en el tema de Como saltar un campo oculto con tabulador "enter" ? en el foro de Javascript en Foros del Web. Hola gente !!! Tengo una funcion que tabula con la tecla enter : Código PHP: function  tabular ( e , obj )          {              tecla ...
  #1 (permalink)  
Antiguo 12/05/2009, 08:16
Avatar de colote  
Fecha de Ingreso: julio-2008
Ubicación: Rosario - Santa Fe - Argentina
Mensajes: 729
Antigüedad: 15 años, 9 meses
Puntos: 8
Pregunta Como saltar un campo oculto con tabulador "enter" ?

Hola gente !!!
Tengo una funcion que tabula con la tecla enter :
Código PHP:
function tabular(e,obj
        {
            
tecla=(document.all) ? e.keyCode e.which;
            if(
tecla!=13) return;
            
frm=obj.form;
            for(
i=0;i<frm.elements.length;i++) 
                if(
frm.elements[i]==obj
                { 
                    if (
i==frm.elements.length-1
                        
i=-1;
                    break 
                }
            if (
frm.elements[i+1].disabled ==true )    
                
tabular(e,frm.elements[i+1]);
            else 
frm.elements[i+1].focus();
            return 
false;
        } 
La funcion anda joya, el problema se presenta cuando tengo un campo oculto, se me queda ahi trabado y no pasa al siguiente !!!

Los campos por ejemplos asi
Código PHP:

<input type="text" size="2"  name="codep_1" onkeypress="return tabular(event,this)"/>
<
input type="hidden" name="var_cont_piezas" onkeypress="return tabular(event,this)">
<
input type="text" size="40" name="namep_1" onkeypress="return tabular(event,this)"/> 
Lo puse en este foro, pero cualquircosa lo movemos ... no se va para js ?

Gracias, Ricardo !!!
__________________
Mail: [email protected]
  #2 (permalink)  
Antiguo 12/05/2009, 08:23
Avatar de temaqueja  
Fecha de Ingreso: agosto-2002
Ubicación: /dev/null/
Mensajes: 399
Antigüedad: 21 años, 8 meses
Puntos: 4
Respuesta: Como saltar un campo oculto con tabulador "enter" ?

Cita:
Iniciado por colote Ver Mensaje
Hola gente !!!
Lo puse en este foro, pero cualquircosa lo movemos ... no se va para js ?
xD no se... tu que opinas?



Ya puestos en tu consulta... ¿porque le pones el onkeypress al hidden si nadie le va a pulsar una tecla?
__________________
_________________________
La computadora nació para resolver problemas que antes no existían
  #3 (permalink)  
Antiguo 12/05/2009, 08:24
 
Fecha de Ingreso: febrero-2008
Mensajes: 269
Antigüedad: 16 años, 2 meses
Puntos: 5
Respuesta: Como saltar un campo oculto con tabulador "enter" ?

Bueno, no soy ningun experto en el tema pero creo yo...Si es un campo oculto el usuario no tiene que escribir nada, entonces no hay que tabular a ese campo....No le pongas la funcion al campo oculto y ya no se quedara trabado 0.0
  #4 (permalink)  
Antiguo 12/05/2009, 08:29
Avatar de Ryo
Ryo
 
Fecha de Ingreso: marzo-2008
Ubicación: Bilbao
Mensajes: 269
Antigüedad: 16 años, 1 mes
Puntos: 14
Respuesta: Como saltar un campo oculto con tabulador "enter" ?

Pues sí, esto es Javascript. En todo caso, yo creo que una posible idea puede ser no usar focus() en sí, sino una función recursiva que en caso de que el siguiente campo sea oculto intente hacer focus sobre el siguiente.

La idea sería algo así:
Código PHP:
function hacerFocusnumElem ) {
frm obj.form;
if ( 
frm.elements[numElem].type == "hidden" ) {
hacerFocusnumElem+);
} else {
frm.elements[numElem].focus()
}
return 
false;

No sé mucho de Javascript, pero si no se puede así supongo que con esta idea se podrá hacer algo parecido.
  #5 (permalink)  
Antiguo 12/05/2009, 08:56
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Como saltar un campo oculto con tabulador "enter" ?

Tema trasladado desde PHP
  #6 (permalink)  
Antiguo 12/05/2009, 11:36
Avatar de colote  
Fecha de Ingreso: julio-2008
Ubicación: Rosario - Santa Fe - Argentina
Mensajes: 729
Antigüedad: 15 años, 9 meses
Puntos: 8
Respuesta: Como saltar un campo oculto con tabulador "enter" ?

Al campo le puse el onkeypress, porque se trababa justo cuando llegaba a el, o sea despues de tabular el ultimo campo antes del hidden ...

~Ryo: voy a ver esa funcion a ver que onda ...

Saludos, Ricardo !!!
__________________
Mail: [email protected]
  #7 (permalink)  
Antiguo 15/05/2009, 07:25
Avatar de colote  
Fecha de Ingreso: julio-2008
Ubicación: Rosario - Santa Fe - Argentina
Mensajes: 729
Antigüedad: 15 años, 9 meses
Puntos: 8
Respuesta: Como saltar un campo oculto con tabulador "enter" ?

Alguna otra idea ???

Saludos, Ricardo !!!
__________________
Mail: [email protected]
  #8 (permalink)  
Antiguo 15/05/2009, 07:33
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Como saltar un campo oculto con tabulador "enter" ?

En la misma función tabular puedes agregar a esta condición:
Código javascript:
Ver original
  1. if (frm.elements[i+1].disabled ==true )
Para saber si es un campo oculto o no:
Código javascript:
Ver original
  1. if (frm.elements[i + 1].disabled == true || frm.elements[i + 1].type == "hidden")
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #9 (permalink)  
Antiguo 15/05/2009, 08:30
Avatar de colote  
Fecha de Ingreso: julio-2008
Ubicación: Rosario - Santa Fe - Argentina
Mensajes: 729
Antigüedad: 15 años, 9 meses
Puntos: 8
Respuesta: Como saltar un campo oculto con tabulador "enter" ?

Buenisimo David, andaba tratando de hacer lo mismo que vos, pero estaba poniendolo un poco mal

Código:
frm.elements[i + 1].hidden== true)
Eso por no ver bien lo que me dijo Ryo !!!
Cita:
if ( frm.elements[numElem].type == "hidden" ) {
Gracias, David !!!!!!! Ahora funciona joya !!!! y puedo ocultar los campos !!!

Edit: Me olvide de dejarles el codigo completo !!!
Código:
function tabular(e,obj)  
{
tecla=(document.all) ? e.keyCode : e.which; 
if(tecla!=13) return; 
frm=obj.form; 

for(i=0;i<frm.elements.length;i++)
	if(frm.elements[i]==obj)  
	{  
	if (i==frm.elements.length-1)
	i=-1;
	break;
	} 

	if (frm.elements[i + 1].disabled == true || frm.elements[i+1].type == "hidden")
	tabular(e,frm.elements[i+1]); 
	else frm.elements[i+1].focus(); 
	return false;
}
__________________
Mail: [email protected]

Última edición por colote; 15/05/2009 a las 08:45
  #10 (permalink)  
Antiguo 28/02/2011, 09:28
 
Fecha de Ingreso: febrero-2011
Mensajes: 1
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Como saltar un campo oculto con tabulador "enter" ?

Muchas gracias, hoy en día este script aún funciona de maravilla...
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 02:30.