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] affichage avec IE


Sujet :

AJAX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juillet 2009
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 24
    Par défaut [AJAX] affichage avec IE
    Bonjour,

    Dans un formulaire lorsque je tape le code postal j'ai une liste déroulante avec les villes correspondantes. Dans firefox j'ai aucun probleme la liste déroulante s'affiche correctement mais sous IE il m'enlève la 1er ville systematiquement et donc si j'ai qu'une ville la liste est vide.

    Mon JS :
    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
     
    function afficherVille(id){
    	//  var xhr;
    	var cp=document.getElementById(id).value;
    	var xhr=null; // Objet XMLHttpRequest
    	if (window.XMLHttpRequest){
    		xhr = new XMLHttpRequest();
    		}
    		else if (window.ActiveXObject){
    		xhr = new ActiveXObject("Microsoft.XMLHTTP");
     
    		}
    		else{
    		alert("Votre navigateur n'est pas compatible ajax");
    		}
    		if(xhr){
    		xhr.onreadystatechange = function(){
    			 if ((xhr.readyState == 4) && (xhr.status == 200)){
    			 document.getElementById("id_ville").innerHTML = xhr.responseText;
    			 //alert(xhr.responseText);
    			 }
    					 else if ((xhr.readyState == 4) && (xhr.status != 200)) {
    					 window.alert("Problème avec AJAX.");
    					 }
    		}
    		xhr.open("POST","/mutuelle/SrvCodePostaux?cp="+cp/*"http://localhost:9080/mutuelle/SrvCodePostaux?cp="+cp*/,true);
    		xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    		xhr.send(cp);
    		}
    }
    Ma servlet :

    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
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
     
    public class SrvCodePostaux extends SrvServletStandard{
     
    	public void performTask(
    			HttpServletRequest request,
    			HttpServletResponse response)
    			throws Exception {
    		String cp = request.getParameter("cp");			
    		String filePath = "/CPVilles.txt";
    		try{
    			// Création du flux bufférisé sur un FileReader, immédiatement suivi par un 
    			// try/finally, ce qui permet de ne fermer le flux QUE s'il le reader
    			// est correctement instancié (évite les NullPointerException)
    			BufferedReader buff = new BufferedReader(new FileReader(filePath));
     
    			try {
    			String line;
    			String ville = null;
    			List listVille=new ArrayList();
    			// Lecture du fichier ligne par ligne. Cette boucle se termine
    			// quand la méthode retourne la valeur null.
    			while ((line = buff.readLine()) != null) {
    			String cp1=(String) line.substring(44, 49);
    			ville=line.substring(50, 83);
    			Pattern pattern = Pattern.compile(cp);
    			Matcher matcher = pattern.matcher(cp1);
     
    			if(matcher.find()){ // si la chaine a été trouvé
    				listVille.add(ville);
    			}
    			}
     
    			try {
    				//if(listVille!=null){
    				response.getWriter().println("<select name='Ville'");
    				for(int i=0;i<listVille.size();i++)	{
    					response.getWriter().println("<option>");
    					response.getWriter().println(listVille.get(i));
    					response.getWriter().println("</option>");
    				}
    				response.getWriter().println("</select>");
     
     
    				} catch (Exception e) {
    				  e.printStackTrace();
    				}
    			} finally {
    			// dans tous les cas, on ferme nos flux
    			buff.close();
    			}
    			} catch (Exception ioe) {
    			// erreur de fermeture des flux
    			System.out.println("Erreur --" + ioe.toString());
    			}
     
    		}
    }
    Ma jsp :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <input class="saisie" name="Code postal" type="text" size="5" maxlength="5" value="" id="cp" onkeyup="afficherVille('cp');"/>
    	<div id="id_ville">
    	</div>
    Si quelqu'un à une idée sa ne serait pas de refus.

    Merci

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    235
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 235
    Par défaut
    Dans ta servlet, quand tu construis ton select, je crois que tu as oublié le ">" de la fin du select :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    response.getWriter().println("<select name='Ville'>");
    au lieu de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    response.getWriter().println("<select name='Ville'");
    Peut-être que c'est seulement du à ça...

  3. #3
    Membre averti
    Inscrit en
    Juillet 2009
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 24
    Par défaut
    oui merci beaucoup c'était sa!!!

    Merci

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

Discussions similaires

  1. [AJAX] AJAX affichage DIV avec nom dynamique
    Par Orelz dans le forum AJAX
    Réponses: 2
    Dernier message: 30/07/2009, 10h02
  2. [AJAX] simple affichage avec Ajax.Request ne fonctionne pas
    Par karimphp dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 18/12/2007, 09h35
  3. [AJAX] Affichage avec AJAX
    Par bernylap dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 11/10/2007, 16h55
  4. [AJAX] affichage d'images avec ajax
    Par Pi2 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 10/12/2006, 18h56
  5. [AJAX] Affichage avec Firefox
    Par sarapis dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 19/05/2006, 16h00

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