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 :

[AJAX] SELECT dynamique & textContent


Sujet :

AJAX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 19
    Par défaut [AJAX] SELECT dynamique & textContent
    Bonjour,

    Je débute en AJAX et tente de réaliser un formulaire avec 3 SELECT mis à jour dynamiquement via l'événement onChange.
    Mes trois SELECT sont :
    - Liste des Régions de France
    - Liste des Départements de France
    - Liste des clubs (de squash pour mon cas) de France

    Au chargement de la page http://www.squash-contact.com/ajax/x...cheJoueurs.php, mon script PHP charge l'ensemble des régions, l'ensemble des départements et l'ensemble des clubs de France.

    Mon but est donc qu'à chaque événement OnChange du SELECT affichant les régions, la liste des départements soit mise à jour. De même, à chaque événement OnChange du SELECT listant les départements, la liste des clubs correspondante s'affiche dans le SELECT.

    Les listes des départements et des clubs sont récupérés dynamiquement via les fichiers suivants :
    - Pour les départements de chaque région : ICI où la variable idRegion prend une valeur de 1 à 22
    - Pour les clubs de chaque départements : ICI où la variable idDepartement prend la valeur 01 à 96

    La gestion de la mise à jour du DOM est faite par ces fichiers JS :
    - pour mettre à jour le SELECT des départements : ICI
    - pour mettre à jour le SELECT des clubs : ICI

    Voila pour la présentation du contexte :-)
    Mon problème est le double :
    1/ Mon script fonctionne correctement sous FF mais pas sous IE. En effet, le problème viendrait du textContent qui n'est pas reconnu par IE.
    J'ai essayé de placer text à la place ou innerHTML mais aucun résultat.

    2/ Actuellement lorsque l'utilisateur sélectionne une région, la liste des départements est mise à jour mais pas la liste des clubs. L'événement onChange n'est apparemment pas pris en compte quand il s'agit de manipulation du DOM... ???

    Quelqu'un aurait il une idée please ??????

    Merci d'avance

  2. #2
    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 vois déjà quelque anomalies par lesquelles tu devrais commencer :

    A+

  3. #3
    Membre éclairé
    Inscrit en
    Décembre 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Décembre 2008
    Messages : 46
    Par défaut
    C'est vrai que IE a quelques soucis avec le textContent.

    J'ai fais une fonction simple qui me retourne le contenu pour un objet quelque soit le navigateur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function texteElement(o) { 
    return (o.innerText) ? o.innerText : (o.textContent) ? o.textContent : ""; 
    }
    au lieu de :
    var texte=departement.getElementsByTagName('nom')[0].innerHTML;

    tu pourrais utiliser :
    var texte=texteElement(departement.getElementsByTagName('nom')[0]);

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 19
    Par défaut Merci pour les conseils !!
    J'ai suivi vos conseils et ai finalisé mon script. Tout fonctionne correctement désormais!

    Pour l'aspect textContent, j'ai utilisé la fonction donnée mais l'ai adapté car il s'agit du champ text et non innerText qui fonctionne sous IE7.

    Je laisse les scripts sur le serveur au cas où quelqu'un voudrais utiliser ce cas d'école (2 semaines de travail pour ma part !!!)

    Bonne journée

  5. #5
    Invité de passage
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 1
    Par défaut
    bonjour,

    souhaitant réaliser sensiblement la même chose que toine92 (une liste de guilde qui se met à jour en fonction du serveur sélectionné), j'ai tenté de comprendre et d'utiliser son code.

    J'ai cependant un petit soucis d'adaptation : la liste des guilde est stockée chez moi dans une base de données mySQL, et non pas dans un fichier xml. Etant une grande débutante en javascript, je ne sais pas comment adapter cette partie du fichier javascript :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    // On récupère la liste des départements appartenant à la région dans le flux de réponse XML
    var list_departements = requete.responseXML.getElementsByTagName('departement');
    j'espère ne pas me tromper en upant ce sujet plutôt que d'en créer un nouveau, si c'est le cas, veuillez m'en excuser,

    lunatictac

  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
    Bonjour,
    Citation Envoyé par lunatictac Voir le message
    j'espère ne pas me tromper en upant ce sujet plutôt que d'en créer un nouveau, si c'est le cas, veuillez m'en excuser,
    une solution préférable aurait été de créer une nouvelle discussion en y donnant un lien vers celle-ci

    Concernant la question : c'est toi (le serveur) qui formate la réponse. Le fait que les données viennent de MySQL ne change rien.

    Tu peux choisir de formater ta réponse en XML, mais aussi en JSON ou tout autre format personnel ...

    De nombreux exemples dans les tutos, mais aussi sur ce forum

    A+

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 28/06/2012, 14h13
  2. [AJAX] SELECT dynamique avec Ajax et Javascript
    Par staff85 dans le forum AJAX
    Réponses: 4
    Dernier message: 22/10/2010, 16h31
  3. [AJAX] Ajax select dynamique
    Par staff85 dans le forum AJAX
    Réponses: 2
    Dernier message: 19/10/2010, 17h29
  4. question simple sur les select dynamiques
    Par grinder59 dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 24/01/2006, 15h53
  5. Select dynamique
    Par mandaillou dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 24/11/2005, 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