salut,
j'ai une erreur bizarre avec ajax
Ma fonction foctionne parfaitement sue IE7 et FF
Mais avec IE6, ma methode ajax fonctionne au premier appel puis elle ne fonctionne plus!
Est ce qu'il y a quelqu'un qui peut m'aider à expliquer ce probléme?
salut,
j'ai une erreur bizarre avec ajax
Ma fonction foctionne parfaitement sue IE7 et FF
Mais avec IE6, ma methode ajax fonctionne au premier appel puis elle ne fonctionne plus!
Est ce qu'il y a quelqu'un qui peut m'aider à expliquer ce probléme?
Peut-être un problème de code ?
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum
Bonjours Bovino,
Merci pour ta réponse mais si c'était un probléme de code, alors pourquoi fonctionne t elle avec FF et IE7
En tous cas voici ma fonction :
J'espére que tu puisse m'aider
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 function AJAXreSendMsg(idMsg, etatMsg) { if( etatMsg.substr(0,2) != "HE" ) { alert("On ne peut pas réenvoyer un méssage dont l'état n'est pas HE*"); return ; } if (confirm("Confirmez vous le réenvoie du méssage de l'Id : "+idMsg) == true ) { if(window.XMLHttpRequest) // Firefox et autres request = new XMLHttpRequest(); else if(window.ActiveXObject){ // Internet Explorer try { request = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { request = new ActiveXObject("Microsoft.XMLHTTP"); } } else { // XMLHttpRequest non supporté par le navigateur alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); xhr = false; } request.onreadystatechange = reSendCallback; request.open( "GET", BASE_URL + "/controller/ReSendMessageCtrl?idMsg="+idMsg, true ); } } function reSendCallback() { if ( request.readyState == 4 ) { if(request.status == 200){ alert("Done: "+request.responseText); } else { alert("ECHECK: "+request.status+","+ request.responseText); } } }
Je ne sais pour quelle raison, j'avais dans l'idée que l'événement onreadystatechange du HttpRequest avait un paramètre this ...
Merci pour toute personne qui a tenté m'aider.
J'ai enfin résolu le probléme: il s'agit en effet d'en probleme de cache.
Si quelqu'un rencontrera ce probléme , voici la solution que j'ai trouvé:
Ce parametre oblige le navigateur à effectuer une nouvelle requête.
Code : Sélectionner tout - Visualiser dans une fenêtre à part "&date=" + new Date().getTime()
Partager