Foros del Web » Programando para Internet » Javascript »

onChange automático

Estas en el tema de onChange automático en el foro de Javascript en Foros del Web. Hola, tengo un formulario que es un buscador y quiero que cada vez que se escribe algo el formulario se envie para recibir los resultados, ...
  #1 (permalink)  
Antiguo 11/10/2009, 13:07
 
Fecha de Ingreso: abril-2007
Mensajes: 213
Antigüedad: 17 años
Puntos: 0
onChange automático

Hola, tengo un formulario que es un buscador y quiero que cada vez que se escribe algo el formulario se envie para recibir los resultados, con el evento onchange esto solo pasa cuando pincho fuera del formulario.
  #2 (permalink)  
Antiguo 11/10/2009, 13:15
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: onChange automático

Hola

En principio y sin mas información parece que lo que mas te conviene es usar AJAX

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #3 (permalink)  
Antiguo 11/10/2009, 13:18
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: onChange automático

pues asi es como funciona onchange. en campos de textos es como una combinacion de blur y mutation. blur cuando el foco abandona el campo y mutation cuando el contenido se altera. no te recomiendo eventos relacionados al teclado (keyup, keydown, keypress) con un temporizador porque dependera mucho de la velocidad de escritura de cada usuario. al menos asi es como yo lo veo.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #4 (permalink)  
Antiguo 11/10/2009, 13:49
 
Fecha de Ingreso: abril-2007
Mensajes: 213
Antigüedad: 17 años
Puntos: 0
Respuesta: onChange automático

Igual digo una barbaridad, pero por lo que he visto, AJAX no es simplemente include() en HTML? Que ya es bastante xD

No se, para hacerlo guardaba dos variables e iba comprobando si habian cambiado, una unos milisegundos antes que la otra pero fallaba, no sé.

¿Como hago para repetir una función cada cierto tiempo sin bucles? ¿Hay alguna función?
  #5 (permalink)  
Antiguo 11/10/2009, 14:25
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: onChange automático

AJAX se puede utilizar como si fuera include pero no es la una aplicacion, tambien se puede usar para enviar datos al servidor. para llamar multiples veces una funcion sin bucle, utiliza un temporizador dentro de la misma funcion que se llame a si mismo.
Código:
function myFunction(){
// statements;
setTimeout(arguments.callee, 2000); // llama la funcion cada dos segundos;
// en este caso no se le pasa ningun parametro a la funcion;
}
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #6 (permalink)  
Antiguo 11/10/2009, 14:25
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: onChange automático

Hola

Cita:
Iniciado por carlosgs91 Ver Mensaje
Igual digo una barbaridad, pero por lo que he visto, AJAX no es simplemente include() en HTML? Que ya es bastante xD
Que es AJAX

Cita:
Iniciado por carlosgs91 Ver Mensaje
No se, para hacerlo guardaba dos variables e iba comprobando si habian cambiado, una unos milisegundos antes que la otra pero fallaba, no sé.

¿Como hago para repetir una función cada cierto tiempo sin bucles? ¿Hay alguna función?
Puedes usar el temporizador setInterval

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
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 16:09.