IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AJAX Discussion :

onkeyup, temporisation et ajax


Sujet :

AJAX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    développeur
    Inscrit en
    Octobre 2004
    Messages
    480
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : développeur
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Octobre 2004
    Messages : 480
    Par défaut onkeyup, temporisation et ajax
    Bonjour,

    J'ai un champ de recherche.
    L'utilisateur saisit un mot dans ce champ.
    Pour l'instant, la recherche est lancée par AJAX à partir du troisième caractère tapé, pour chaque caractère tapé.
    Donc si on a 6 caractères tapés, on aura une requête pour le 3ème, pour le 4ème, pour le 5ème, pour le 6ème.

    Je voudrais ajouter une temporisation, qui laisse le temps de taper le mot sans lancer la requête ajax à chaque fois qu'une lettre est tapée.

    A chaque fois qu'on tape un caractère, on déclenche un chrono et si au bout de tempo, on n'a pas tapé un autre caractère, on lance la requête.
    Si on a tapé un caractère avant la fin de tempo, on relance le chrono à partir de 0.

    Je pense qu'il faut utiliser settimeout() et une variable globale.

  2. #2
    Membre éclairé
    Homme Profil pro
    développeur
    Inscrit en
    Octobre 2004
    Messages
    480
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : développeur
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Octobre 2004
    Messages : 480
    Par défaut
    C'était finalement assez simple.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    var t = false;
     
    function onkeyup_recherche() {
    	clearTimeout(t); //remet le compteur à 0
    	t = setTimeout(function() { //lance le chrono pour 500ms
    		requete_ajax(param1, param2);
    	}, 500);
    }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AJAX] onkeyup et sendData
    Par pi-2r dans le forum AJAX
    Réponses: 6
    Dernier message: 08/09/2012, 00h16
  2. [AJAX] Temporisation ajax/jquery sans callback ?
    Par guyllo dans le forum AJAX
    Réponses: 3
    Dernier message: 23/03/2012, 21h54
  3. [AJAX] Rafraichissement + temporisation
    Par drogbaaz dans le forum AJAX
    Réponses: 1
    Dernier message: 09/03/2011, 16h32
  4. [AJAX] Auto completion temporisée
    Par pmithrandir dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 21/05/2008, 15h27
  5. [AJAX] Temporisation requete AJAX
    Par cerede2000 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 07/06/2007, 10h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo