Bonjour,
Je sollicite votre aide sur une fonction javascript ou je souhaite faire deux requêtes AJAX mais où les résultats des rêquetes font pour l'instant un peu n'importe quoi...
Je m'explique : je souhaite mettre à jour deux div très différents l'un contenant un tableau et l'autre des bouton.
Voici la syntaxe que j'utilise pour récupérer le tableau et l'insérer dans le div adéquat :
Ce code marche très bien mais si je rajoute la requete concernant les boutons, il me met les boutons à la place du tableau et ne m'affiche pas la tableau...
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 var requete = null; function creerRequete() { try { requete = new XMLHttpRequest(); } catch (microsoft) { try { requete = new ActiveXObject('Msxml2.XMLHTTP'); } catch(autremicrosoft) { try { requete = new ActiveXObject('Microsoft.XMLHTTP'); } catch(echec) { requete = null; } } } if(requete == null) { alert('Impossible de créer l\'objet requête,\nVotre navigateur ne semble pas supporter les object XMLHttpRequest.'); } } function rechargerTableau() { var tableau = document.getElementById('tableau'); creerRequete(); var url = 'php/tabHoraires.php'; requete.onreadystatechange = function() { if(requete.readyState == 4) { if(requete.status == 200) { tableau.innerHTML=requete.responseText; } } }; requete.open('GET', url, true); requete.send(null);
En fait, je me suis rendue compte que c'était la définition de fonction (anonyme) suivante qui posait problème:
En effet, lorsque je met deux requetes à la suite je redefinis la fontion et donc forcement ça fait n'importe quoi...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 requete.onreadystatechange = function() { if(requete.readyState == 4) { if(requete.status == 200) { tableau.innerHTML=requete.responseText; } } };
Comment faire pour créer la fonction dans la première requete, l'éxécuter dans la première puis la redéfinir pour la deuxième requete?
Je sais pas si je suis très claire...N'hésitez pas à me poser des questions!
Merci pour votre aide!
Partager