Bonjour !
Je suis débutant en Ajax et un problème me chaffouine : lorsqu'on déclenche une requête Ajax, il est possible de lancer une fonction de retour dès que la requête a été traitée.
Or "Ajax" n'attend pas que le script php soit entièrement traité, il lance tout de suite la fonction de retour.
Voilà ma question : comment attendre la fin du script php avant de lancer la fonction de retour ?
Voici ma fonction qui déclenche une requête ajax :
ps : Si je suis pas clair dites le moi
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 function ajax(file, args, fct) { var req = null; // Test de quelle façon créer la requête if(window.XMLHttpRequest) // FIREFOX req = new XMLHttpRequest(); else if(window.ActiveXObject) // IE req = new ActiveXObject("Microsoft.XMLHTTP"); else return(false); req.onreadystatechange = testRep; // fonction de retour req.open("POST", file, true); req.setRequestHeader('Content-type', 'application/x-www-form-urlencoded; charset=iso-8859-1'); req.send(args); // Vars passéés par méthode POST function testRep() { // callback if (req.readyState == 4) { if (req.status == 200) { try { if (typeof fct != 'undefined') fct(req.responseText); } catch(e) { alert("ERREUR ajax fonction de retour (fct="+fct+") : "+e); } } else { alert("Problem: " + req.statusText + " (status=" + req.status + ")"); } } } }![]()
Partager