Ver Mensaje Individual
  #3 (permalink)  
Antiguo 10/09/2009, 16:24
Exxion
 
Fecha de Ingreso: julio-2009
Mensajes: 2
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Mostrar sugerencias

Otra solución podría ser que hicieras un timeout. Es decir, a los X segundos de que el usuario deje de escribir creas la petición. Yo lo suelo usar para comprobar formularios mientras el usuario escribe. Por ejemplo, la función esperar esperará 2 segundos antes de ejecutar la función "peticion()", y si se vuelve a llamar en menos de ese lapso de tiempo se reseteará y volverá a esperar 2 segundos más:

Código:
var i = 0;
var timeout;
var esperar = function(){
    if(i != 0){
        clearTimeout(timeout);
    }
    timeout = setTimeout(peticion(), 2000);
    i = 1;
}

var peticion = function(){
    // Crear petición AJAX...
    [...]
    i = 0;
}
Código HTML:
<input [...] onKeyUp="esperar();" />