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] Selon son emplacement ma liste déroulante fonctionne ou pas : etrange !


Sujet :

JavaScript

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    291
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2007
    Messages : 291
    Points : 217
    Points
    217
    Par défaut [AJAX] Selon son emplacement ma liste déroulante fonctionne ou pas : etrange !
    Bonjour,

    Je suis désespérée!!! J'ai deux listes déroulantes liées semblables, l'une marche et pas l'autre... Je les rafraichit avec XmlHTTPRequest. Et si je prends celle qui marche et la met à la place de l'autre elle ne fonctionne plus...

    Y a t'il une erreur dans mon code? Qu'est ce qui pourrait provoquer ça?
    Ah oui et j'ai oublié; quand je dis que ça ne fonctionne pas c'est qu'il ne se passe... rien! (rien du tout meme firebug n'emet pas la moindre protestation!!ouin... )

    A l'aide!

    Voici mon code html (qui fonctionne dans une fenetre independante de ma page principale) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    <div dojoType="dialog" id="calculSalarieHoraire" >
     
    	<form id="choix" action="affichage.php" method="post">
     
     		<div class="formFrame">
     
    			 <div class="formRow">
    			   <label for="process">Process</label>
    			   <select	name="blocProcess" id="blocProcess" onchange="getPole(this.value,this.id,'blocPole');" dojoType="ComboBox">
    				<option selected value="vide">--Choisissez le process--</option>
    				<!-- suite du select-->
    			   </select>
    			   </div>
    			  <div class="formRow"> 
    			   <span id="blocPole"></span><br />
    			  </div>
    Le meme code (ou presque?) qui ne fonctionne pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <div class="formRow">
    			   <label for="process">Process</label>
    			   <select	name="appartenanceProcess" id="appartenanceProcess" onchange="javascript:getPole(this.value,this.id,'appartenancePole');" dojoType="ComboBox">
    				<option selected value="vide">--Choisissez le process--</option>
    				<!--suite du select-->
    			   </select>
    			   </div>
    			  <div class="formRow"> 
    			   <span id="appartenancePole"></span><br />
    			  </div>
    Et pour finir ma fonction getPole(...)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
     
    function getPole(idr,id,destination)
    {
        /* Si il n'y a pas d'identifiant de process, on fait disparaître la seconde liste au cas où elle serait affichée */
        if(idr == 'vide')
        {
            document.getElementById(id).innerHTML = '';
        }
        else
        {
            /* message d'attente */
            var blocListe = document.getElementById(id);
            blocListe.innerHTML = "Traitement en cours, veuillez patienter...";
            /* On crée l'objet XHR */
            creerRequete();
            /* Définition du fichier de traitement */
            var url = 'listesDeroulantes.php?idr='+ idr;
            /* Envoi de la requête à la page de traitement */
            requete.open('GET', url, true);
            /* On surveille le changement d'état de la requête qui va passer successivement de 1 à 4 */
            requete.onreadystatechange = function()
            {
                /* Lorsque l'état est à 4 */
                if(requete.readyState == 4)
                {
                    /* Si on a un statut à 200 */
                    /*if(requete.status == 200)
                    {
                        /* Mise à jour de l'affichage*/
    var listePole = requete.responseText;
        var blocListe = document.getElementById(destination);
        blocListe.innerHTML = listePole;
                    //}
                }
            };
            requete.send(null);
        }
    }
    J'offre une prime à celui qui me résoud ce casse tete, j'en peux plus!

    Merci !
    Bonne journée

  2. #2
    Membre à l'essai
    Profil pro
    Développeur Web
    Inscrit en
    Juillet 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2007
    Messages : 13
    Points : 14
    Points
    14
    Par défaut
    Tu as essayé d'ouvrir la page "listesDeroulantes.php?idr=xx" pour voir si le script te renvoyait bien quelque chose?

Discussions similaires

  1. [WD-2000] Afficher un texte selon choix d'une liste déroulante
    Par wyzer dans le forum VBA Word
    Réponses: 11
    Dernier message: 13/12/2017, 10h12
  2. Liste déroulante + fonctionnement du $("#menu").html
    Par Skytrancer dans le forum jQuery
    Réponses: 4
    Dernier message: 28/05/2011, 21h19
  3. validation formulaire selon choix dans la liste déroulante
    Par florianjoy54 dans le forum Langage
    Réponses: 16
    Dernier message: 02/02/2010, 11h45
  4. Liste déroulante fonctionnement
    Par Pascal26 dans le forum Modélisation
    Réponses: 2
    Dernier message: 23/01/2008, 20h00
  5. [AJAX] Rafraîchissement automatique sur une liste déroulante
    Par frutix dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 26/04/2007, 16h09

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