Afficher le contenu d'un DIV d'une page HTML

Fermé
le Bleu - Modifié par le Bleu le 19/09/2011 à 12:03
Mihawk Messages postés 4315 Date d'inscription mercredi 29 mars 2006 Statut Contributeur Dernière intervention 6 janvier 2015 - 19 sept. 2011 à 15:58
Bonjour tout le monde,

Je me suis pas mal retourner le cerveau avant de me décider à demander de l'aide !
Je souhaite afficher dans une page le contenu d'un div qui se trouve sur une autre page.
Les 2 pages étant sur le même serveur. L'objectif est de le faire en JS (ou en Ajax ?)


Voila, j'ai une page "Page_B.html"
<HTML><BODY> 
<div id="tondiv"> 
le div que je veux récupérer 
</div> 
</BODY></HTML>


Et je souhaite récupérer le contenu dans de l'id "tondiv" dans une autre page. Pour cela, j'ai regarder sur les forums et j'ai trouvé un bout de code qui me plaisait bien mais que je n'arrive pas à faire marcher !

<html><head> 
<script charset="utf-8" src="http://code.jquery.com/jquery-1.6.1.min.js"></script> 
<script type="text/javascript"> 
$.get("page_B.html", function(data){ 
 var maPage = $(data); 
 alert (maPage); 
 var myStr = $(maPage).find("tondiv").text(); 
 alert(myStr); // pour le debug 
   } 
); 
</script> 
</head> 
<Body> 
<P>je veux afficher ici le contenu du DIV "tondiv" contenu dans "page_B.html"</P> 
</body> 
</html>



Merci de votre aide,
Vous aurez compris que je suis loin d'être un expert en dev :)
A+

A voir également:

5 réponses

Mihawk Messages postés 4315 Date d'inscription mercredi 29 mars 2006 Statut Contributeur Dernière intervention 6 janvier 2015 846
19 sept. 2011 à 12:13
C'est normal que cela ne fonctionne pas : tu définis la fonction chargée de récupérer la 2e page, mais tu ne l'appelles jamais. Essaye ceci :

<HTML><BODY> 
<div id="tondiv"> 
le div que je veux récupérer 
</div> 
</BODY></HTML>



Et

<html>
<head> 
<script charset="utf-8" src="http://code.jquery.com/jquery-1.6.1.min.js"></script> 
<script type="text/javascript"> 
$.get("page_B.html", function(data){ 
 var maPage = $(data); 
 //alert (maPage); 
 myStr = $(maPage).find("tondiv").text();
 //alert(myStr); // pour le debug 
   } 
); 
</script> 
</head> 

<Body> 
<P id="tonNouveauDiv"></P> 
</body> 

<script type="text/javascript"> 
   document.getElementById("tonNouveauDiv").innerHTML = myStr;
</script>
</html>


0
Salut,
Effectivement, je ne l'appelais pas, ca pouvais pas marcher !
Mais ca ne marche toujours pas...

A priori, il me semble que myStr est vide car je ne vois rien dans alert(myStr).
Tu penses pas que le problème est de ce côté ?
0
Mihawk Messages postés 4315 Date d'inscription mercredi 29 mars 2006 Statut Contributeur Dernière intervention 6 janvier 2015 846
Modifié par Mihawk le 19/09/2011 à 12:29
Ecoute, c'est du JQuery, donc je ne connais pas trop ça. Personnellement j'aurai rempli un iframe "caché", récupéré le div puis supprimé l'iframe.
<html> 
    <head>  
    </head>  
    <body>  
         <iframe src="page_B.html"> style="display:none;"></iframe> 
         <P id="tonNouveauDiv"></P>  

         <script type="text/javascript">  
            document.getElementById("tonNouveauDiv").innerHTML = document.getElementById("tonDiv").innerHTML; 
            document.getElementsByTagName("iframe ")[0].innerHTML = ""; 
         </script> 

     </body>  
</html> 


Tant qu'on ne fait pas, on ne sait pas.
0
Bon, merci de ton aide quand même !
Quelqu'un saurait-il me dépanner ?
Merci !
0
Mihawk Messages postés 4315 Date d'inscription mercredi 29 mars 2006 Statut Contributeur Dernière intervention 6 janvier 2015 846
19 sept. 2011 à 14:27
Ma 2e proposition marche pas ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
nan, elle marche pas mieux :)
Désolé Mihawk !
0
Mihawk Messages postés 4315 Date d'inscription mercredi 29 mars 2006 Statut Contributeur Dernière intervention 6 janvier 2015 846
19 sept. 2011 à 15:58
Le contenu d'une iframe doit pas être accessible via JS je pense...
0