Bonjour,
j'aimerais afficher des sous-catégories en fonction d'un choix d'un choix porté dans un select, pour cela j'utilise ajax pour récupérer l'id du choix et le transmettre au contrôleur, le contrôleur récupère alors le résultat de la recherche en fonction de l'id de la catégorie choisie dans le repository de la sous catégorie et renvoie cette réponse sous format json. Jusque la tout va bien car je réussit à voir l'objet json dans la console. mon soucis se porte au niveau de récupérer cet objet json dans json et de boucler pour qu'il m'affiche les résultats. Merci de m'aider
code dans le controleur
ma requete ajax:
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 $request = $this->getRequest(); if($request->isXmlHttpRequest()) { $idclient = $request->request->get('id'); if ($idclient != null) { $getprojet= $this->getDoctrine() ->getEntityManager() ->getRepository('EliprojectCollaborateurBundle:Projet') ->findBy(array('idclient'=>$idclient)); $tabProjets = array(); $i = 0; foreach ($getprojet as $projet) { $tabProjets[$i]['idprojet'] = $projet->getIdprojet(); $tabProjets[$i]['projLibelle'] = $projet->getProjLibelle(); $i++; } $response = new Response(); $projets = json_encode(array('projet' => $tabProjets)); $response->headers->set('Content-Type', 'application/json'); $response->setContent($projets); return $response; } }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 function getprojets(idclient){ $.ajax({ type: 'POST', url: "{{ path('eliproject_collaborateur_get_projet')}} ", data: "&id="+idclient, complete: function(data) { $('#projets').html(data.responseText) } }); }
dans ma vue twig
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 <select id="clients" name="client" onchange="getprojets(this.value)" > <option selected="selected" value="defaut">-------------------- Selectionner un client -----------------</option> {%for result in results %} <option value="{{result.idclient}}">{{result.clNomsociete}}</option> {%endfor%} </select>
je devrais donc par la suite récupérer mon objet json et afficher les sous catégories correspondant à la catégorie choisie plus haut.
Merci de votre aide
Partager