|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Nouveau Membre du Club
![]() |
Bonsoir tout le monde, je poste alors que c'est la fin de ma journée, je répondrai donc surement demain.
Je suis en train de développer un moteur de recherche de vêtements avec des cases à cocher. J'y joins de l'Ajax pour qu'à chaque action du client sur les checkboxs de choix des critères, une requête soit envoyé au serveur pour mettre à jour un champ avec le nombre d'articles correspondant à la requête. Cela marche très bien sous FF, mais sous IE (6 et 7), l'appel marche une fois puis il me retourne ensuite toujours pareil. En fait, je sais qu'il est appelé à chaque fois puisqu'en remplaçant : Code :
document.getElementById('nb_resultat_recherche').innerHTML = xmlHttp.responseText; la fenêtre d'alerte JS apparait tout le temps mais avec tout le temps le même résultat (le premier). Voici donc le code source : la fonction Ajax : Code :
et voici le bout de PHP qui me retourne le nombre d'articles (c'est aléatoire pour le moment, en attendant que je construise la vraie requête) Code :
Voila, vous pouvez voir la page en construction ici... |
||||
|
|
00
|
|
|
#2 |
|
Nouveau Membre du Club
![]() |
Bon, désolé de remettre ça mais j'ai vraiment pas d'explications au problème... Si quelqu'un a déjà eu ce genre de souci, qu'il n'hésite pas à m'en parler, ça m'empêche d'avancer, tout simplement...
PS : en appelant directement dans mon navigateur le script recherche_ajax.php, qui me renvoit le nombre aléatoire, j'obtiens l'effet voulu, que ce soit sous FF ou IE (6 et 7). Le problème vient donc bien de l'AJAX ?!?! PS 2 : le bloc que je mets à jour n'est pas un div mais un span... Cela ne pose pas de problèmes à Firefox, mais peut-être à IE... |
|
|
00
|
|
|
#3 |
|
Nouveau Membre du Club
![]() |
J'ai l'impression que IE garde quelque part en cache le résultat du premier appel AJAX. En effet, si je rafraichis ma page en faisant Ctrl+F5 (pour vider le cache en même temps
), le résultat dans mon span (j'en profite pour dire que span ou div, c'est pareil) change au nouveau premier clic sur une des checkboxs...
|
|
|
00
|
|
|
#4 |
![]() ![]() ![]() Didier MouronvalDéveloppeur Web Inscription : juin 2008 Messages : 13 828 ![]() |
Code :
var url="recherche_ajax.php"; // le script à appeller
__________________
Pas de question technique par MP ! Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi ! Vous possédez un blog et aimeriez diffuser vos billets sur le forum, 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
|
|
00
|
|
|
#5 | ||
|
Membre éprouvé
![]() Inscription : avril 2007 Messages : 745 ![]() |
Et comme ca :
Code :
|
||
|
|
00
|
|
|
#6 |
|
Nouveau Membre du Club
![]() |
Katachana... j'ai regardé ta solution... tu as seulement changé l'ordre du code à l'intérieur de la fonction... J'avais déjà trouvé cette solution sur je ne sais plus quel blog.. Elle ne change rien à mon problème..
Par contre, Bovino, ta solution peut marcher, seulement je ne vois pas trop comment la mettre en oeuvre.. Ou doit ajouter le timestamp, et comment cela se présente... |
|
|
00
|
|
|
#7 | ||
|
Nouveau Membre du Club
![]() |
Je ne sais pas si c'est à ça que tu pensais Bovino... mais voila le code :
Code :
|
||
|
|
00
|
|
|
#8 | ||
![]() ![]() ![]() Didier MouronvalDéveloppeur Web Inscription : juin 2008 Messages : 13 828 ![]() |
Ben non, là ton Date() ne sert à rien, il faut l'ajouter à l'URL pour que IE ne cherche pas dans le cache :
Code :
__________________
Pas de question technique par MP ! Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi ! Vous possédez un blog et aimeriez diffuser vos billets sur le forum, 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
|
||
|
00
|
|
|
#9 |
|
Nouveau Membre du Club
![]() |
OK... c'est vrai que je me demandai aussi a quoi ça pouvait bien servir... Mais bon comme j'ai plus aucune idée.. Je crois que t'aurais pu me dire n'importe quoi, j'aurai bu tes paroles comme un pilier de bar descend ses demis...
|
|
|
00
|
|
|
#10 |
![]() ![]() ![]() Didier MouronvalDéveloppeur Web Inscription : juin 2008 Messages : 13 828 ![]() |
C'est parceque je suis un pilier de bar que tu dis ça ??? Tu me connais ??? C'est toi Pierrot ?
Blague à part, ça marche ou pas ? ( quand même)
__________________
Pas de question technique par MP ! Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi ! Vous possédez un blog et aimeriez diffuser vos billets sur le forum, 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
|
|
00
|
|
|
#11 | ||
|
Nouveau Membre du Club
![]() |
Hourra... alors je comprends toujours pas...
Sa marche bien avec ce que tu m'as filé.... Seulement, c'est pas la première fois que j'utilise cette fonction pour faire de l'AJAX, mais c'est la première fois que je rencontre ce problème bizarre.. SI quelqu'un a une explication je suis preneur.. Et sinon, je vous mets quand même le code final (qui marche donc sous IE 6 et 7, en plus des autres navigateurs) : Code :
|
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com