[AJAX] Séquence avec AJAX
Bonjour,
Je cherche a faire un appel AJAX au sein d'une fonction javascript afin de mettre a jour une variable globale en fonction du contenu XML de la reponse ajax.
Mon process Ajax marche parfaitement et j'obtiens bien ce que je veux mais la séquence des opération n'est pas respectée:
Le code de ma fonction JS appelé sur un "onchange":
Code:
1 2 3 4 5 6 7
| function getSubAttributes(trId, ischecked){
attName = trId.substring(2);
alert("1. isempty="+isempty);
getAjaxBoolSub(attName);
alert("3. isempty="+isempty);
} |
Le code de mon AJAX:
Code:
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
| //AJAX
function getAjaxBoolSub(attName){
if(window.XMLHttpRequest){
try{
reqAjax = new XMLHttpRequest();
}catch(e){
reqAjax = false;
}
}
if(reqAjax){
reqAjax.onreadystatechange = checkAjax;
reqAjax.open("GET", "/afi_tuto/jasper/getAjaxBoolSub.do?attribute="+attName, "true");
reqAjax.send("");
}
}
function checkAjax(){
if(reqAjax.readyState==4){
if(reqAjax.status==200){
var rootCol = reqAjax.responseXML.getElementsByTagName("ROOT");
var root= rootCol[0];
var tagIsEmpty = root.firstChild;
var isempty = tagIsEmpty.firstChild.nodeValue;
alert("2. isempty=" + isempty);
}
else{
alert("There was a problem retrieving page\n" + reqAjax.statusText);
}
}
} |
Pour faire simple, mon alert("2. isempty=" + isempty) s'affiche après le alert("3. isempty=" + isempty).
Si qq'un a une explication du probleme...