Bonjour,
J'aimerais utiliser un objet xhr � deux endroits diff�rents de ma page html..
Le premier pour remplir automatiquement et en direct un input readonly,
le second pour remplir une liste d�roulante li�e � une premi�re..
Au d�but, j'avais juste le second et �a marchait bien.. mais �a s'est g�t� lorsque j'ajoute le premier. En fait je ne sais pas si je peux cr�er deux objets XHR, ou si je dois utiliser le m�me, sachant qu'un de mes select.onChange lancera les deux fontions utilisant le ou les xhr..
Voil� le code mon script :
Ici je n'utilise qu'une seule instance d'xhr..
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93 //_____________________________________________________________________________________ //Gestion de l'objet XmlHttpRequest function getXhr(){ var xhr = null; if(window.XMLHttpRequest) // Firefox et autres xhr = new XMLHttpRequest(); else if(window.ActiveXObject){ // Internet Explorer try { //celui-ci marche.. 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; } //_____________________________________________________________________________________ //Sert pour l'auto-compl�tion du select du v�hicule /* * M�thode qui sera appel�e sur le click du bouton */ function load_veh(){ var xhr = getXhr(); // On d�finit ce qu'on va faire quand on aura la r�ponse xhr.onreadystatechange = function(){ // On ne fait quelque chose que si on a tout re�u et que le serveur est ok if(xhr.readyState == 4 && xhr.status == 200){ leselect = xhr.responseText; // On se sert de innerHTML pour rajouter les options a la liste document.getElementById('vehic2').innerHTML = leselect; } } alert("ici c bon"); // Ici on va voir comment faire du post xhr.open("POST","ajaxVeh.php",false); // ne pas oublier �a pour le post xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); // ne pas oublier de poster les arguments // ici, l'id de l'auteur sel = document.getElementById('vehic1'); idVehic1 = sel.options[sel.selectedIndex].value; xhr.send("idVehic1="+idVehic1); } //_____________________________________________________________________________________ //_____________________________________________________________________________________ //Fonction de g�n�ration automatique de l'identifiant de la DT function identif() { alert("ici aussi"); var xhr = getXhr(); // On d�finit ce qu'on va faire quand on aura la r�ponse xhr.onreadystatechange = function(){ // On ne fait quelque chose que si on a tout re�u et que le serveur est ok if(xhr.readyState == 4 && xhr.status == 200){ leinput = xhr.responseText; // On se sert de innerHTML pour rajouter les options a la liste document.getElementById('identif').innerHTML = leinput; } } //On r�cup�re le contr�le input de l'identificateur sol = document.getElementById('identif'); var texto; //On r�cup�re l'imputation part1 = document.getElementById('imput'); txtpart1 = part1.value; alert(txtpart1); //Pareil pour le v�hicule et et sa vague part2 = document.getElementById('vehic1'); if (part2.value == "-1") txtpart2 = ""; else txtpart2 = part2.value; part3 = document.getElementById('vehic2'); if (part3.value == "-1") txtpart3 = ""; else txtpart3 = part3.value; val[] = (txtpart1,txtpart2,txtpart3); alert(val[0]." | ".val[1]." | ".val[2]; // Ici on va voir comment faire du post xhr.open("POST","ajaxIdt.php",false); // ne pas oublier �a pour le post xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); // ne pas oublier de poster les arguments xhr.send(val); }
Aucun de mes tests alert ne s'ex�cute, comme si les fonctions n'�taient pas actives..
Partager