begin process at 2012 05 29 19:20:22
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

CSS

 > 

Général

 > 

onunload: attendre la fin d'un echange ajax avnt de fermer la fenêtre?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

onunload: attendre la fin d'un echange ajax avnt de fermer la fenêtre?

mardi 25 août 2009 à 15:26:37 | onunload: attendre la fin d'un echange ajax avnt de fermer la fenêtre?

trygelin

Afin de fermer une session, lors de changement de page, ou fermeture du navigateur je souhaite déclencher une requete AJAX:
j'ai écrit la procédure ainsi:
<script language="javascript">
function stop(){
if(window.XMLHttpRequest){requete= new XMLHttpRequest();}
else{if (window.ActiveXObject){requete= new ActiveXObject("Microsoft.XMLHTTP");}}
var appel="Sources/deconnect.php";
requete.open("GET",appel,true);//ouverture requête AJAX
requete.send(null);
requete.onreadystatechange=function(){}
}
</script>
Sous FF pas de problème cela fonctionne correctement par contre sous IE ça ne marche pas lors de la fermeture de IE, IE plante avec le message suivant: "IEXPLORE.EXE a rencontré un problème et doit fermer. Nous vous prions de nous excuser pour le désagrément encouru."

mardi 25 août 2009 à 16:41:01 | Re : onunload: attendre la fin d'un echange ajax avnt de fermer la fenêtre?

Bul3

Membre Club

Bonjour,

déjà, j'éviterais le nom "stop" pour la fonction
c'est peut-être un nom réservé par IE ?

ensuite, cette fonction est appelée quand ?
onbeforeunload du body semble bien

peut-être aussi
requete.open("GET",appel,false);
requete.send(null); ou requete.send(""); ???
/*requete.onreadystatechange=function(){} */
}

mais, pas de raison à priori (?)

requete= new XMLHttpRequest(); est aussi valable pour IE
quelle version de IE au fait ?

Cordialement [mon Site] [M'écrire] Bul

mardi 25 août 2009 à 17:40:30 | Re : onunload: attendre la fin d'un echange ajax avnt de fermer la fenêtre?

Bul3

Membre Club

ch'tiot exemple qui fonctionne sans soucis...

onbeforeunload.htm :

<html>
<body>
</body>
<script text=javascript">
window.onbeforeunload=function()
{ var xml=new XMLHttpRequest();
xml.open("get","onbeforeunload.php",false);
xml.send("");
alert(xml.responseText);
}
</script>
</html>


onbeforeunload.php :


<?php
echo 'tout va bien';
?>


mardi 25 août 2009 à 22:44:54 | Re : onunload: attendre la fin d'un echange ajax avnt de fermer la fenêtre?

trygelin

Merci de votre aide
En effet j'appelai la fonction sur
document.onunload

mercredi 26 août 2009 à 13:21:59 | Re : onunload: attendre la fin d'un echange ajax avnt de fermer la fenêtre?

Bul3

Membre Club


donc déjà rectifiez cela : ok.
mais
requete.open + requete.send + requete.onreadystatechange
ce n'est pas le bon ordre (!)
requete.onreadystatechange + requete.open + requete.send
ce sera plus sûr
et....
votre fonction stop() rend la main malgré tout !
sans rien attendre la fin de quoi que ce soit,
ça risque donc aussi de queuter dans certains cas.



Cette discussion est classée dans : ie, requete, ajax, fermer, onunload


Répondre à ce message

Sujets en rapport avec ce message

onUnload compatibilité IE/NN [ par fred31 ] Salut a tousVoilà mon probleme :Dans le body de ma page j'utilise l'evenement onUnload qui ouvre une fenetre (window.open...) afin d'alimenter un scri Ajax et Send [ par syndrael ] Bonjour, J'ai un souci avec Ajax et IE. Mon code fonctionne très bien sous Firefox. Voila le problème: J'ai un menu déroulant qui fait un Send à chaqu problème fonctionnement ajax sous IE [ par ahcorad ] Bonjour, J'ai développé une application sur mon portable qui fonctionne parfaitement, je l'ai mis sur le serveur dédié, et la toutes les fonction AJAX Patienter pendant une requete Ajax [ par deterred ] Bonjour, J'ai une grosse requete Ajax a executer, et le chargement est long. Je voudrais mettre à la place de mon compteur de résultat un message du g Recuperer des valeurs d'un formulaire pour creer une requete mysql [ par Ze_lola ] Bonjour a tous! Alors voila j'ai un petit problème concernant ajax:il faut que je recupere des valeurs d'un formulaire et que je les réincjecte dans u FireFox 3 + Ajax = bug ? [ par rhan_659 ] Bonjour à tous Je suis face à un bug désopilant, un code en ajax qui fonctionne sous FF2 mais pas sous FF3 voila le code que j'utilise requete = Mon defilement d'images en ajax fonctionne sous IE mais pas FIREFOX [ par VBFRANCE ] Thierry ajax fermeture de session [ par metos ] bonjour es ce que sous ajax il faut fermer une connexion ou fermer l'activeX?metos Fermer une 2eme fenetre IE a partir d'une 1ere [ par notoriousFab ] BonjourEst-ce possible de fermer une fenetre IE ouverte automatiquement par une autre page ?J'utilise un window.open a partir d'une page et je voudrai Vérification de la bonne exécution d'une requete ajax avant unload [ par chiktika ] Bonjour,tout est dans le titre mais je vais détailler un peu :Au moment de quitter la page html, je dois faire des enregistrements ds une table mysql


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 4,805 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales