Bonjour à tous,
J'aimerai lorsque je clic sur une ligne de tableau (<tr></tr>) que cela affiche d'autre lignes en dessous avec des données récupérées en SQL. seulement apart envoyé des variables en POST et GET c'est tout ce que je sais faire en AJAX.
Quelqu'un aurait il une idée de comment faire?
Concrètement j'ai un tableau php où chaque ligne est issu d'une requête SQL en php en gros cela donne (avec ce que j'aimerai):
Dans cette fonction fonction javascript j'aimerai aller chercher des infos dans la bdd et les afficher dans les sous lignes correspondante à leurs lignes respectives.
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 <table> <tr id='ligne_1' onclick='ma_fonction_pr_afficher_la_sous_ligne'> <td></td> <td></td> <td></td> </tr> <tr id='ma_sous_ligne_1_1_que_je_veux_afficher'> <td></td> <td></td> </tr> <tr id='ligne_2' onclick='ma_fonction_pr_afficher_la_sous_ligne'> <td></td> <td></td> <td></td> </tr> <tr id='ma_sous_ligne_2_1_que_je_veux_afficher'> <td></td> <td></td> </tr> <tr id='ligne_3' onclick='ma_fonction_pr_afficher_la_sous_ligne'> <td></td> <td></td> <td></td> </tr> <tr id='ma_sous_ligne_3_1_que_je_veux_afficher'> <td></td> <td></td> </tr> <tr id='ma_sous_ligne_3_2_que_je_veux_afficher'> <td></td> <td></td> </tr> </table>
j'ai pensé aux display none ou hidden j'ai tout suite laisser tombé car le temps de chargement de la page peut devenir vite très long.
J'ai une class AJAX pour mes get et post dois-je m'en servir pour la requête SQL?
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 function Ajax () { //--- propriétés --- this.xhr = null ; // variable de connexion ajax this.typefic ; // variable qui contient soit "XML" soit "text" this.contenu = "" ; // contenu de la reception var s = this ; //--- constructeur (création de l'objet de connexion --- if (window.XMLHttpRequest) { this.xhr = new XMLHttpRequest() ; } else { if (window.ActiveXObject) { this.xhr = new ActiveXObject ("Microsoft.XMLHTTP") ; } else { alert ("Votre navigateur n'est pas compatible avec Ajax") ; } } //--- si l'objet est construit, creation de la méthode d'envoie --- if (this.xhr) { //--- envoi vers le serveur --- this.envoi = function (nomfic, message) { this.xhr.open("POST", nomfic, false) ; this.xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); // this.xhr.setRequestHeader("Content-type", "charset=iso-8859-1"); this.xhr.send(message) ; } } }
Quelqu'un peut il m'aider?
Merci
Partager