Bonjour,
Pour commencer il faut que vous sachiez que je d�bute en javascript donc j'ai un peut du mal avec la solution AJAX.
Je vous expose:
_Mon projet
_Mon code
_Mon probleme
Ainsi si vous souhaitez sauter des parties se sera plus facile (je fais comme �a car j'ai un d�faut, je donne trop d�tail pour exposer mes probl�mes et �a devient des vrais romans que peut de monde trouvent le courage de lire)
Mon Projet
Je dois cr�er des pages web avec, pour faire simple, 3 divs:
_en tete: compos� d'un titre et d'une image.
_menu: compos� de liens
_contenu: compos� de plein d'infos
L'en tete et le menu seront identiques pour toutes les pages et seul le contenu changera en fonction du lien, du menu, sur lequel on aura cliqu�.
J'ai donc essay� d'utiliser un code AJAX qui me permettrai de changer juste la partie contenu de la page.
Mon code
Le code de ma page html est le suivant:
Pour ce qui est de mon code 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
19
20
21
22
23
24
25
26
27
28
29 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en"> <head> <meta http-equiv="content-type" content="text/html;charset=utf-8" /> <meta name="generator" content="" /> <title>Titre de ma page</title> <link rel="stylesheet" media="screen" type="text/css" href="Page.css" /> <!-- page design was carried out in a style sheet --> <link rel="alternate stylesheet" media="screen" type="text/css" title="lien type 2 (violet puis bleu au survole)" href="Page2.css" /> <script src="Page.js" language="Javascript" type="text/javascript"></script> </head> <body> <div title="" id="header"> </div> <div title="links towards other pages" id="menu"> <!-- give the source at links --> <a title="" href="" onclick="file('Page1.html');">lien1</a> <a title="" href="" onclick="file('Page2.html');">lien2</a> <a title="" href="" onclick="file('Page3.html');">Lien3</a> <a title="" href="" onclick="file('Page4.html');">Lien4</a> <a title="" href="" onclick="file('Page5.html');">Lien5</a> </div> <div title="" id="contenu"> </div> </body> </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 function file(fichier) { if(window.XMLHttpRequest) // FIREFOX xhr_object = new XMLHttpRequest(); else if(window.ActiveXObject) // IE xhr_object = new ActiveXObject("Microsoft.XMLHTTP"); else return(false); xhr_object.open("GET", fichier, false); xhr_object.send(null); if(xhr_object.readyState == 4) return(xhr_object.responseText); else return(false); }
Mon probl�me
Lorsque je lance ma page d'accueil, tout vas bien, mais lorsque je click sur l'un des liens du menu, au lieu de m'ouvrir la page que je demande, cela mon mon pste de travail avec le chemin de la page!??
je ne comprend pas, j'avais utilis� le js d'un tutoriel qui expliquait comment sa marche et voila comment je traduisait les lignes du code:
function file(fichier).................................................................Nom de la fonction �videmment![]()
if(window.XMLHttpRequest) // FIREFOX......................................Si l'on utilise fiirefox![]()
xhr_object = new XMLHttpRequest();.........................................Alors nouveau fichier XMLHttpRequest![]()
else if(window.ActiveXObject) // IE............................................Sinon, si l'on utilise internet explorer![]()
xhr_object = new ActiveXObject("Microsoft.XMLHTTP");.................Alors nouveau fichier ActiveXObject![]()
else return(false);...................................................................Sinon retourner false (je ne sais pas trop � quoi sa sert?)
xhr_object.open("GET", fichier, false);.........................................L'objet � ouvrir est "le fichier auquel fait r�f�rence la variable "fichier""![]()
xhr_object.send(null);..............................................................L'objet � envoy� est nul(la aussi petit bug de compr�hension)
if(xhr_object.readyState == 4) return(xhr_object.responseText);.....Si toutes les donn�es sont charg�es, alors retourne la r�ponse du serveur sous forme de texte (si je veux que le serveur me renvoi une page html, est ce la que je dois modifier quelque chose?)
else return(false);...................................................................Alors retourne false ()
}
Voila si quelqu'un � eu le courage de tout lire f�licitations
Et si quelqu'un qui maitrise un peu se langage voit o� est mon probl�me et peut m'aider � le r�soudre, ce serait vraiment cool, parce que je nage compl�tement l� et je n'y comprend pas grand chose, je suis plus html/css.
Merci
Partager