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] Ajax - une autocomplétion pas à pas


Sujet :

JavaScript

  1. #1
    Membre actif Avatar de ploxien
    Inscrit en
    Février 2006
    Messages
    467
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Février 2006
    Messages : 467
    Points : 221
    Points
    221
    Par défaut [AJAX] Ajax - une autocomplétion pas à pas
    Hello,

    J'ai pris l'implémentation dispo ici (http://dcabasson.developpez.com/arti...ion-pas-a-pas/) de cette fonctionalité, qui est super... J'ai cependant un problème... J'ai vu qu'elle est prévue pour un champ qui a une auto-completion. Je voudrais en avoir 2 sur la même page.

    Ces deux champs prendraient leurs valeurs à la même place (mêmes valeurs possibles). En fait, c'est pour saisir deux noms de joueurs formants une équipe... Les noms disponibles sont dans un table de ma DB.

    Bref, je n'y arrive pas, car si je fais un initAutoComplete au chargement de la page, je ne peux en faire qu'un (que pour un champ)... Et si je le fais dans l'évenement onFocus de mes champs (un appel à initAutoComplete pour chaque champ), ça fonctionne, à la seule exception que la liste des possibilités ne disparait plus lorsque je fais un "tab" pour passer au champ suivant, ce qui n'est pas très éstéthique...
    A mon avis, le problème vient du fait que les variables ne sont plus "globales" mais locales au champ, qui n'est plus actif lors de sa perte de focus... Mais pas sûr..

    Quelqun a-t-il une idée comment modifier cela? Sachant que je ne suis pas un pro en javascript, j'ai essayé quelques trucs sans succès...

    Merci d'avance...

    P.S. J'ai posé la question par MP au créateur, mais n'ayant pas encore de réponse je me permet de poster ici... En plus, ça pourra peut-être aider d'autres personnes!
    (\ _ /)
    (='.'=)
    (")-(")
    Deux règles du succès:
    1) Ne communiquez jamais à quelqu'un tout votre savoir...

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2007
    Messages : 247
    Points : 276
    Points
    276
    Par défaut
    slt,

    je viens de survoler le tuto que tu as indiqué en lien...

    teste en mettant dans le window.onload :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    window.onload = function(){
         initAutoComplete(document.getElementById('id_du_form'), document.getElementById('id_champ_1'), document.getElementById('id_submit'));
         initAutoComplete(document.getElementById('id_du_form'), document.getElementById('id_champ_2'), document.getElementById('id_submit'));
         }
    qu'est-ce que ça donne ??
    Conception et hébergement de votre site Web : http://www.jvprod.fr !

  3. #3
    Membre actif Avatar de ploxien
    Inscrit en
    Février 2006
    Messages
    467
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Février 2006
    Messages : 467
    Points : 221
    Points
    221
    Par défaut
    Hello,

    J'avais testé ça, mais il n'y en a qu'un qui fonctionnait... Sauf erreur le deuxième... En fait, les variables utilisées sont écrasées par le deuxième appel, il me semble...

    En fait, j'ai contourné le problème en magouillant... Lorsqu'un champ prend le focus, je recharge la page en passant en param le champ qui a le focus, ce qui créé le bon appel... Ca fonctionne bien, mais c'est de la magouille... Mais vu que c'est prévu pour tourner en local, ça ne pose pas de problème de performance...

    Je suis ouvert à d'autres idées

    Merci, A+
    (\ _ /)
    (='.'=)
    (")-(")
    Deux règles du succès:
    1) Ne communiquez jamais à quelqu'un tout votre savoir...

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

Discussions similaires

  1. [AJAX] Ajax marche sous IE mais pas sous Firefox
    Par snoopy92 dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 10/05/2007, 18h24
  2. [AJAX] AJAX+Firefox : readyState ne dépasse pas le 1
    Par TheRedLed dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 13/04/2007, 13h42
  3. [AJAX] Ajax dans une appli J2EE et outil de développement
    Par tiboudchou dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 15/02/2007, 08h48
  4. [AJAX] Ajax fonctionne sur onblur mais pas sur onkeypress
    Par julien.63 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 19/01/2007, 15h14

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