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] remplir un select marche sous Firefox pas sous IE


Sujet :

AJAX

  1. #1
    Membre averti
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2009
    Messages : 22
    Par défaut [AJAX] remplir un select marche sous Firefox pas sous IE
    Bonjour à tous,

    J'ai un gros soucis comme le dit le titre:
    J'ai fait une fonction AJAX qui remplit un select HTML.
    La page
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <input type="text" onkeyup="listeClient(document.getElementById('resultat'), this);"/>
    <div style="position:fixed;">
     <select id="resultat" onClick="alert(this.value);" multiple="multiple">
     </select>
    </div>
    Le bout de code appelé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <c:forEach var="client" items="${listeClient}">
    		<option value="<c:out value="${client.codeJuridique}"/>">
    			<c:out value="${client.nom}"/>
    		</option>
    	</c:forEach>
    la fonction javascript
    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
     
    function listeClient(resultat, txtClient){
    	var nomClient = txtClient.value;
    	if(nomClient.length>1){
    		var xhr = getXhr();
    		xhr.onreadystatechange = function()
    		{
    			if(xhr.readyState == 4 && xhr.status == 200)
    			{
    				var reponse = xhr.responseText;
    				resultat.innerHTML =reponse;
    			}
    		}
    		xhr.open("POST","listerClient",true);
    		xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
    		xhr.send("client="+txtClient.value);
    	}
    }
    Tout fonctionne sous firefox (ma liste se rempli et s'affiche); Par contre sous IE (6 et 7) ma liste se rempli mais ne s'affiche pas (je le sais grace à la fonction javascript innerHTML).
    plus étrange pour moi c'est que si je pointe sur la div et pas sur le select tout marche ???
    Je sais pas si je suis bien clair mais quelqu'un a eu le même problème?

  2. #2
    Membre Expert
    Avatar de RomainVALERI
    Homme Profil pro
    POOête
    Inscrit en
    Avril 2008
    Messages
    2 652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : POOête

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Par défaut
    Oui, c'est un grand classique : innerHTML ne fait pas bon ménage avec les éléments form, select, input, etc., sur certaisn navigateurs notamment IE...

    Fais une recherche dans les messages du forum avec "innerHTML" et "DOM" tu devrais avoir beaucoup de lecture passionnante à ce sujet, et il y a aussi des contributions (de SpaceFrog entre autres)

    J'ai un peu la flemme (et pas trop le temps aujourd'hui) de te rechercher et placer tous les liens désolé '^^

  3. #3
    Membre averti
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2009
    Messages : 22
    Par défaut
    Ok! j'avais pas pensé au javascript...
    Merci pour l'info je vais chercher ^^

  4. #4
    Membre averti
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2009
    Messages : 22
    Par défaut
    Effectivement une petite recherche sur le forum vient de me montrer l'étendu du carnage.
    Je débute en javascript et DOM, mais ce sujet m'a bien aidé :
    http://www.developpez.net/forums/d70...ajax-dom-aide/

    Merci à tous

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

Discussions similaires

  1. Bug sous Chrome et pas sous Firefox ni sous Safari ni sous IE
    Par elcoyotos dans le forum Mise en page CSS
    Réponses: 17
    Dernier message: 01/11/2015, 13h56
  2. [ASP.NET/C#]Imagebutton marche sous Firefox pas sous IE
    Par nicO1077 dans le forum ASP.NET
    Réponses: 6
    Dernier message: 27/05/2009, 10h30
  3. Verif de formulaire tourne sous IE pas sous FireFox
    Par Hakim_Bey dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 20/07/2006, 10h28
  4. Verif de formulaire tourne sous IE pas sous FireFox
    Par Hakim_Bey dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 19/07/2006, 19h11
  5. getElementById OK sous IE pas sous Firefox
    Par omlip dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 20/06/2006, 12h04

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