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] Comment rafraîchir une liste déroulante alimentée par ajax


Sujet :

JavaScript

  1. #1
    Membre extrêmement actif Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Points : 682
    Points
    682
    Par défaut [AJAX] Comment rafraîchir une liste déroulante alimentée par ajax
    Bonjour,

    Dans un formulaire, je choisi une famille de produit, puis (grâce à ajax) la liste des produits correspondant à cette famille apparaît.

    Tout cela fonctionne très bien.

    Je viens de placer sur mon formulaire un bouton permettant d'ajouter un produit à une famille. Ce bouton ouvre une fenêtre dans laquelle je crée mon produit dans la famille qui va bien.

    Je ferme ma fenêtre sans raffraîchir la fenêtre appelante.

    Je vais dans la liste des produit de la famille et je ne vois pas le produit ajouté.

    Pour le voir, il faut que je change de famille, puis que je revienne sur la famille du début et là je vois mon produit.

    Mon problème est que effectivement le ONCHANGE placé sur le choix de a famille, n'est réactivé que si je change de famille.

    Comment faire pour qu'au retour de ma fenêtre d'ajout de produit celui-ci soit visible dans le programme appelant.

    Merci d'avance
    Y a pas, plus on fait, plus on sait. Plus on cherche, plus on sait chercher. Maintenant quant à trouver, c'est autre chose.

  2. #2
    Expert éminent
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Points : 9 127
    Points
    9 127
    Par défaut
    Citation Envoyé par lodan
    Bonjour,

    Dans un formulaire, je choisi une famille de produit, puis (grâce à ajax) la liste des produits correspondant à cette famille apparaît.

    Tout cela fonctionne très bien.

    Je viens de placer sur mon formulaire un bouton permettant d'ajouter un produit à une famille. Ce bouton ouvre une fenêtre dans laquelle je crée mon produit dans la famille qui va bien.

    Je ferme ma fenêtre sans raffraîchir la fenêtre appelante.

    Je vais dans la liste des produit de la famille et je ne vois pas le produit ajouté.

    Pour le voir, il faut que je change de famille, puis que je revienne sur la famille du début et là je vois mon produit.

    Mon problème est que effectivement le ONCHANGE placé sur le choix de a famille, n'est réactivé que si je change de famille.

    Comment faire pour qu'au retour de ma fenêtre d'ajout de produit celui-ci soit visible dans le programme appelant.

    Merci d'avance
    normal sur le onchange
    tu as à ta disposition le onMouseUp qui est activé lorsque la souris est relâché sur l'élément

    quant à paser une valeur d'une fenêtre fille à l'appelant il te faut en passer par window.parent
    un moyen simple est de définir une methode dans la fenêtre mère
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    //fenêtre mère
    window.document.myMethod =  function (param) {
    ...
    }
    et dans la fille invoquer cette methode
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    // fifille
    window.parent.document.myMethod(25);

    Voilà pour le mprincipe (j'ai écris ça sans vérif donc à mettre au point)
    note il est possible d'une fenêtre fille d'accéder au dom de sa parente et donc de manipuler n'importe quel élément
    A+JYT

  3. #3
    Membre extrêmement actif Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Points : 682
    Points
    682
    Par défaut
    Merci

    Manipulation du parent par la fille, ça me convient assez comme principe, je vais creuser de ce côté d'abord, vers l'autre ensuite.
    Y a pas, plus on fait, plus on sait. Plus on cherche, plus on sait chercher. Maintenant quant à trouver, c'est autre chose.

  4. #4
    Membre extrêmement actif Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Points : 682
    Points
    682
    Par défaut
    Il y a aussi "onBeforeUnLoad" qui semble être intéressant pour déclencher l'exécution d'une fonction relançant l'exécution d'alimentation de ma liste.
    Y a pas, plus on fait, plus on sait. Plus on cherche, plus on sait chercher. Maintenant quant à trouver, c'est autre chose.

  5. #5
    Membre extrêmement actif Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Points : 682
    Points
    682
    Par défaut
    Et la solution est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    window.opener.goProduits(window.opener.document.getElementById('famille_type'), window.opener.document.getElementById('id_produit').id)
    Merci
    Y a pas, plus on fait, plus on sait. Plus on cherche, plus on sait chercher. Maintenant quant à trouver, c'est autre chose.

  6. #6
    Expert éminent
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Points : 9 127
    Points
    9 127
    Par défaut
    Ha oui opener pas parent

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 11/05/2010, 16h37
  2. Réponses: 4
    Dernier message: 28/12/2009, 15h37
  3. Réponses: 3
    Dernier message: 12/05/2009, 14h22
  4. [AJAX] lier deux listes déroulantes alimenté par une base de données (Mysql)
    Par arnaudperfect dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 23/04/2007, 01h06
  5. Réponses: 1
    Dernier message: 20/03/2007, 09h24

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