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

JavaScript Discussion :

[AJAX] Contrôler la valeur d'un champ toutes les x secondes


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de baggie
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    755
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 755
    Par défaut [AJAX] Contrôler la valeur d'un champ toutes les x secondes
    Bonjour ^^

    j'ai un champ input de type text dans lequel je tape une adresse email.
    Je tape le début d'une adresse que je veux, et ensuite s'affiche la liste de tous les domaines possibles.
    Ex : je tape : contact@ et une liste avec : truc.fr, bidule.org, machin.com s'affiche dessous.

    Je sélectionne ce que je veux dans cette liste, et mon choix s'affiche à la suite de ce que j'avais tapé.
    Ex : contact@truc.fr

    C'est de l'autocomplete avec YUI, ce qui fait que la modification du champ n'est pas prise en compte, donc onChange non détecté vu qu'il n'y a pas de perte de focus.

    J'ai alors pensé à faire un contrôle de ce qu'il y a dans ce champ toutes les x secondes pour que mes fonctions fonctionnent bien.
    Ex : la vérification de la disponibilité de l'adresse mail, avec mon système actuel, cette fonction vérifiera uniquement "contact@" et non contact@truc.fr.

    Est-ce la meilleure solution ? Dois-je le faire en Ajax ou y'a-t-il des moyens plus simples ? Si c'est en Ajax, j'avoue qu'un peu d'aide ne serait pas de refus ... =/

    Merci d'avance.

  2. #2
    Membre averti
    Inscrit en
    Mai 2008
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 29
    Par défaut
    Une piste pour t'aider :

    l'évènement onkeyup. Comme ça, au lieu de controler toutes les secondes ce que l'utilisateur a tapé, tu controles juste lorsque l'utilisateur vient d'écrire quelque chose. ça te fera déjà des économies de ressources et tu n'auras pas à gérer de timer ou autre.

  3. #3
    Membre éclairé Avatar de baggie
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    755
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 755
    Par défaut
    J'y ai pensé à ça, mais comme l'utilisateur va sélectionner un choix dans la liste qui s'affiche sous le champ, un évènement onkeyup ne sera pas détecté puisque l'utilisateur n'aura rien tapé au clavier mais juste cliqué sur un choix =/

  4. #4
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Bonjour,
    je croyais que c'était résolu

    A+

  5. #5
    Membre éclairé Avatar de baggie
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    755
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 755
    Par défaut
    Ca c'était un autre problème, mais toujours sur l'autocomplétion en effet. La vérification s'effectue sans problème (d'où le problème résolu) mais j'ai fait quelques modifications sur mon autocomplétion et donc maintenant, il faut que je contrôle un autre champ (et non pas celui du problème résolu ^^). Sauf que ce champ est différent, l'utilisateur ne tape pas tout, mais sélectionne également un morceau de l'adresse mail dans la liste.

    Depuis que je fais mon autocomplete, j'ai toujours eu ce problème de onchange non détecté, alors je cherche des solutions et j'ai pensé à celle-ci, c'est pour ça =)

  6. #6
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Citation Envoyé par baggie Voir le message
    Depuis que je fais mon autocomplete, j'ai toujours eu ce problème de onchange non détecté, alors je cherche des solutions et j'ai pensé à celle-ci, c'est pour ça =)
    Mais pourquoi est-ce un problème ?
    Puisque tu as un script qui alimente ton champ (et qui fait que le onchange ne se déclenche pas), pourquoi n'appelles-tu pas ton script de contrôle à la fin du script d'alimentation ?

    A+

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

Discussions similaires

  1. JSF et AJAX (recuperer la valeur d'un champs ajax)
    Par silverfab34 dans le forum JSF
    Réponses: 6
    Dernier message: 09/07/2010, 09h22
  2. Mise à jour d'un champ toutes les secondes
    Par mathilde50 dans le forum Access
    Réponses: 3
    Dernier message: 13/10/2008, 00h14
  3. Réponses: 4
    Dernier message: 06/11/2007, 11h44
  4. [Etat] Valeurs non visibles sur toutes les pages
    Par wperezrobles dans le forum IHM
    Réponses: 6
    Dernier message: 17/10/2006, 14h12
  5. Contrôler la valeur d'un champ (Table)
    Par Cyphen dans le forum Access
    Réponses: 4
    Dernier message: 27/06/2006, 12h07

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