Foros del Web » Programando para Internet » Javascript »

tabulador automatico

Estas en el tema de tabulador automatico en el foro de Javascript en Foros del Web. Hola a todos de pura casualidad no tendran un js que cuando aprietes dos teclas.. se haga como si se apretara la tecla de tabulacion... ...
  #1 (permalink)  
Antiguo 13/08/2008, 17:13
 
Fecha de Ingreso: mayo-2008
Mensajes: 71
Antigüedad: 15 años, 11 meses
Puntos: 1
Pregunta tabulador automatico

Hola a todos de pura casualidad no tendran un js que cuando aprietes dos teclas..
se haga como si se apretara la tecla de tabulacion...

de antemano muchas gracias
  #2 (permalink)  
Antiguo 14/08/2008, 04:43
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Respuesta: tabulador automatico

Hola edxodar_12

No entiendo bien tu duda pero echa un vistazo a este mensaje, a ver si te sirve de orientación:

http://www.forosdelweb.com/1268726-post231.html

Saludos,
  #3 (permalink)  
Antiguo 14/08/2008, 09:56
 
Fecha de Ingreso: mayo-2008
Mensajes: 71
Antigüedad: 15 años, 11 meses
Puntos: 1
Respuesta: tabulador automatico

ayer me fui por un imprevisto.. si me explique mal, lo que quiria es recorrer los elementos de un formulario al precionar dos teclas.. por ejemplo en una caja de texto aprieto 0 y luego 2 despues de ingresar el segundo dato aho que se haga la tabulacion
  #4 (permalink)  
Antiguo 14/08/2008, 09:59
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: tabulador automatico

A ver si entendí, los campos permitirán únicamente dos letras, y quieres que al llegar a ese límite pase al siguiente campo, ¿es así?.

En ese caso podrías modificar la función de JavierB para que en vez de comparar el código de tecla compare el lenght del campo y si es mayor del deseado pasar al otro campo.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 14/08/2008, 10:05
 
Fecha de Ingreso: mayo-2008
Mensajes: 71
Antigüedad: 15 años, 11 meses
Puntos: 1
Respuesta: tabulador automatico

si eso es lo que quiero hacer
ya te entendi..
voy a checar como lo puedo modificar
grax
  #6 (permalink)  
Antiguo 14/08/2008, 10:08
 
Fecha de Ingreso: mayo-2008
Mensajes: 71
Antigüedad: 15 años, 11 meses
Puntos: 1
Respuesta: tabulador automatico

nadamas una duda se le asigna a una variable y despues utilizo el if o se puede poner directo al if..??
  #7 (permalink)  
Antiguo 14/08/2008, 10:12
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: tabulador automatico

No sé a qué valor te estás refiriendo, pero en la mayoría de los casos se puede usar directamente, aunque para facilitar la lectura del código y principalmente si vas a usar el valor varias veces, es normal que se asigne a una variable.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #8 (permalink)  
Antiguo 14/08/2008, 11:51
 
Fecha de Ingreso: mayo-2008
Mensajes: 71
Antigüedad: 15 años, 11 meses
Puntos: 1
Respuesta: tabulador automatico

como asigno el valor de la leguht??..
le intente de varias formas y no pude!!:.
  #9 (permalink)  
Antiguo 14/08/2008, 11:57
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: tabulador automatico

Por ejemplo, si tienes un <input> con id='texto'. Entonces sería:
Código PHP:
var longitud document.getElementById('texto').value.length
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #10 (permalink)  
Antiguo 14/08/2008, 12:23
 
Fecha de Ingreso: mayo-2008
Mensajes: 71
Antigüedad: 15 años, 11 meses
Puntos: 1
Respuesta: tabulador automatico

me marca error dice que se esperaba un objeto!!...
porque me lo marca si se supone que por lo menos me debe poner la longitud a 1?
  #11 (permalink)  
Antiguo 14/08/2008, 12:28
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Pregunta Respuesta: tabulador automatico

¿Tienes certeza que estás colocando el id correcto del input? ¿Cuál es el código HTML del input?
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #12 (permalink)  
Antiguo 14/08/2008, 12:34
 
Fecha de Ingreso: mayo-2008
Mensajes: 71
Antigüedad: 15 años, 11 meses
Puntos: 1
Respuesta: tabulador automatico

<input type="text" id='texto' onkeypress="return tabular(event,this)" />

y este fue el ke me distes

var longitud = document.getElementById('texto').value.length;aler t ("dia"+longitud);
  #13 (permalink)  
Antiguo 14/08/2008, 12:38
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: tabulador automatico

Yo lo probé y funciona . El error debe estar en otra parte del código.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #14 (permalink)  
Antiguo 14/08/2008, 12:57
 
Fecha de Ingreso: mayo-2008
Mensajes: 71
Antigüedad: 15 años, 11 meses
Puntos: 1
Respuesta: tabulador automatico

lo volvi ha hacer y ya me lo acepto ya me sale!!:.

nadamas otro pregunta!!..

caul seria el evento, si quiero que primero se ponga el numero y luego haga el evento.. el que tengo es el mismo del ejemplo onkeypress pero quiero que primero ponga el numero hay alguno?
  #15 (permalink)  
Antiguo 14/08/2008, 12:59
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
De acuerdo Respuesta: tabulador automatico

No, el mejor evento para eso es el onkeypress, aunque como tal creo que te va a servir. Haz las pruebas, y si falla nos cuentas. .
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #16 (permalink)  
Antiguo 14/08/2008, 13:13
 
Fecha de Ingreso: mayo-2008
Mensajes: 71
Antigüedad: 15 años, 11 meses
Puntos: 1
Respuesta: tabulador automatico

busque algunos evento el que me funciono es el onkeyup
te lo agradesco mucho David
asi me quedo:

<html>
<head>
<script>
function tabular(e,obj) {


var longitud = document.getElementById('texto').value.length;

if(longitud==0) return;
if(longitud==1) 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 }
frm.elements[i+1].focus();
return false;
}
</script>
</head>
<body>

<form>
<input type="text" id='texto' maxlength="2" onkeyup="return tabular(event,this)" />
<input type="text" onkeypress="return tabular(event,this)" />
</form>
</body>
</html>
  #17 (permalink)  
Antiguo 14/08/2008, 13:16
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
De acuerdo Respuesta: tabulador automatico

Me alegra que haya funcionado, de paso se agradece a JavierB quien es el que hizo el código original.

P.S.: Aunque creo que lo más correcto sería usar this.value en vez de un id fijo.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #18 (permalink)  
Antiguo 14/08/2008, 14:32
 
Fecha de Ingreso: mayo-2008
Mensajes: 71
Antigüedad: 15 años, 11 meses
Puntos: 1
Respuesta: tabulador automatico

otra vez yo sorry por molestar eso que me dijiste suena interesante pero no lo comprendo bien.. que le debo canviar al codigo tome la longitud como tu me dijiste?
  #19 (permalink)  
Antiguo 14/08/2008, 14:36
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: tabulador automatico

Como ya le estás pasando el objeto como parámetro, solo cambia esto:
Código PHP:
var longitud document.getElementById('texto').value.length
Por:
Código PHP:
var longitud obj.value.length
También, si la longitud máxima no es la misma en todos los campos puedes pasar el máximo como parámetro.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
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 00:15.