Bonjour,

dans ma page html, j'ai deux listes déroulantes dont je veux initialiser les valeurs en appelant du .php

voici mes deux fonctions ajax qui sont sencé faire le travail :

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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
function getXhr(){
    var xhr = null; 
 
	if(window.XMLHttpRequest){ // Firefox et autres
	   xhr = new XMLHttpRequest();
	}
	else if(window.ActiveXObject){ // Internet Explorer 
	   try {
                xhr = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                xhr = new ActiveXObject("Microsoft.XMLHTTP");           
            }
	}
	else { // XMLHttpRequest non supporté par le navigateur 
	   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest!"); 
	   xhr = false; 
	} 
    return xhr;
}
 
 
/**************************************************
* GetAssurance *
***************************************************/
 
function getAssurance(){
    xhr=getXhr();
 
    xhr.onreadystatechange = function(){
 
            if(xhr.readyState == 4 && xhr.status == 200){
                    leselect = xhr.responseText;
                    document.getElementById('Assurance').innerHTML = leselect;
            }
    }
 
    xhr.open("POST","../functions/GetAssurance.php",true); 
    xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
 
	xhr.send();
}
 
/**************************************************
* GetClub *
***************************************************/
 
function getClub(){
    xhr=getXhr();
 
    xhr.onreadystatechange = function(){
 
                 if(xhr.readyState == 4 && xhr.status == 200){
                    leselect = xhr.responseText;
                    document.getElementById('Club').innerHTML = leselect;
            }
			document. body.style.cursor='default';
    }
 
    xhr.open("POST","../functions/GetClub.php",true); 
    xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
 
	xhr.send();
}


dans ma page je veux faire l initialisation en appelant mes deux fonctions

<script>getAssurance();</script>

et plus loin

<script>getClub();</script>


et ceci ne fonctionne pas ... les deux indépendement marchent très bien mais si je fais les deux ... alors une des deux , en l occurence la premiere ne fait rien.

apparement le xhr.readyState n'est pas a 4 (Done) ...

et si je trace les appeles avec Firebug ... les deux fonction appelent bien les .php correspondant et repondent correctement avec un status = 200.

est ce qu'il y a un problème de synchro avec Ajax ? pourtant il me semble que le but est justement de pouvoir faire autant d appel Asynchro que l on veut .

Est ce que qqn a un conseil ou une idée ???