Voilà, j'ai écrit un bout de code qui affiche dans une DIV un bout de texte contenu dans un fichier en utilisant XMLHttpRequest.
Tout marche très bien jusqu'au moment où je decide de rafraichir la page (F5). Une fois le rafrachissement effectué plus rien ne s'affiche et quand je clique sur les liens rien ne répond.
Mon code:
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 <html> <head> <script src="jsFunctions.js"></script> </head> <body onload="functionsToPerformOnIndexLoad();"> <a href="#" onclick="javascript:displayRecipesDiv('favoris');">Favoris</a> <a href="#" onclick="javascript:displayRecipesDiv('nouvelles');">Nouvelles</a> <div id="favoris"> </div> <div id="nouvelles"> </div> </body> </html>J'utilise IE7.
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 function functionsToPerformOnIndexLoad() { displayRecipesDiv('favoris'); } function displayRecipesDiv(divId) { if(divId == 'favoris') { getInnerHTML(divId,"favoris.php"); } if(divId == 'nouvelles') { getInnerHTML(divId,"nouvelles.html"); } document.getElementById(divId).style.display = 'block'; if(divId != 'favoris') { document.getElementById('favoris').style.display = 'none'; } if(divId != 'nouvelles') { document.getElementById('nouvelles').style.display = 'none'; } } function getInnerHTML(divId,url) { var xhr_object = null; if(window.XMLHttpRequest) { xhr_object = new XMLHttpRequest(); } else if(window.ActiveXObject) { xhr_object = new ActiveXObject("Microsoft.XMLHTTP"); } else { // XMLHttpRequest non supporté par le navigateur alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); return; } xhr_object.open("GET", url, true); xhr_object.send(null); xhr_object.onreadystatechange = function() { if(xhr_object.readyState == 4) { document.getElementById(divId).innerHTML = xhr_object.responseText; } } }
edit: je viens de vérifier, je n'ai aucun soucis sous Firefox donc ça semble être un probleme avec IE.
Merci d'avance.
Partager