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] chargement page HTML qui ne marche pas (?)


Sujet :

AJAX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juin 2006
    Messages
    98
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 98
    Par défaut [AJAX] chargement page HTML qui ne marche pas (?)
    Bonjour,

    J'ai un petit souci avec le chargement d'une page HTML dans une autre page HTML en passant par de l'Ajax.

    index.html
    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
     
    ...
    function envoieRequete(url) {
    		var xhr_object = null;
    			if(window.XMLHttpRequest) xhr_object = new XMLHttpRequest();
    			else
    			if (window.ActiveXObject) xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
     
    			// On ouvre la requete vers la page désirée
    			xhr_object.open("GET", url, true);
    			xhr_object.onreadystatechange = function() {
    				if ( xhr_object.readyState == 4 ) {
    					// j'affiche dans la DIV spécifiées le contenu retourné par le fichier
    					document.getElementById('plop').innerHTML = xhr_object.responseText;
    				}
    		}
    		// dans le cas du get
    		xhr_object.send(null);	
    	}
    ...
    <body>
    <a href="#" onclick="envoieRequete('page1.html');" >test</a>
    </body>
    page1.html
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     <html>
     <head>
     <title>page 1</title>
     </head>
     <body bgcolor=#00ff00>
     	page 1
     </body>
     </html>
    index.html se charge bien et lorsque je clique sur le lien 'test', j'obtiens une chaine de caractère avec des point d'interrogation partout:
    ...��p�a�g�e� �1� � �...
    au lieu de ma page verte.

    Voilà, si quelqu'un pouvait m'aider.
    merci d'avance.

    Pardon d'avance si il y a déjà eu ce genre de post.

  2. #2
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Mai 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2009
    Messages : 11
    Par défaut
    salut,

    Essaie peut-être de récupérer du xml, mais je pense que si tu envoies les balises html et body dans une page qui en contient déjà il doit pas comprendre dans tous les cas.

    Au lieu de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('plop').innerHTML = xhr_object.responseText;
    Teste :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    var tmp = xhr.responseXML.getElementsByTagName("div");
    var element = document.getElementById('plop');
    element.appendChild(tmp.item(0));
    Et ensuite
    page1.xml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?xml version="1.0" encoding="UTF-8"?>
     
    <root>
    	<div style="background-color:#00ff00;">
    		page 1
    	</div>
    	&nbsp;
    </root>

  3. #3
    Membre Expert
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 56

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Par défaut
    Salut,

    Surement un problème d'encodage entre tes pages, mais que dire du fait que tu insères une page HTML dans une balise DIV ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <div>
     <html>
     <head>
     <title>page 1</title>
     </head>
     <body bgcolor=#00ff00>
     	page 1
     </body>
     </html> 
    </div>
    Un peu... étonnant non ? Et puis je ne vois pas ta balise avec l'id plop.

    ERE

  4. #4
    Membre confirmé
    Inscrit en
    Juin 2006
    Messages
    98
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 98
    Par défaut
    Dans la page HTML, il faut juste le code HTML de ce que je souhaite afficher, donc dans ce cas "page 1" ?

    Page1.HTML
    Sinon, a quoi doit ressembler ma page page1.html?

  5. #5
    Membre Expert
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 56

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Par défaut
    C'est mieux ainsi. Je ne dis pas que cela va résoudre tes problèmes d'encodage mais nous verrons ainsi plus clair.

    ERE

  6. #6
    Membre confirmé
    Inscrit en
    Juin 2006
    Messages
    98
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 98
    Par défaut
    Je testerais ce soir, merci.
    Pour info, j'avais déjà mis juste page1 mais j'avais le même problème.
    Je dois avoir un autre problème...
    To be continued...

Discussions similaires

  1. Réponses: 0
    Dernier message: 16/12/2011, 16h52
  2. [AJAX] Qu'est ce qui ne marche pas
    Par Anthony.Desvernois dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 03/09/2007, 00h04
  3. [RegEx] bbcode vers html qui ne marche pas
    Par jexl dans le forum Langage
    Réponses: 3
    Dernier message: 21/06/2007, 21h05
  4. Page de login -- script PHP qui ne marche pas
    Par Alexlesilex dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 6
    Dernier message: 24/04/2006, 16h32
  5. [debutant] page html qui ne fait pas fonctionner la fonction
    Par Battosaiii dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 26/03/2006, 19h25

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