Bonjour,
C'est la première fois que j'utilise Symfony pour un projet, je suis plutôt habitué à Zend et à ses mécanismes, c'est pour cela que je galère un peu.
Ce que je cherche à faire est tout bête, en validant un formulaire, faire appel à un controlleur via une requête ajax, puis ensuite pouvoir mettre une partie de la vue à jour.
Mon problème :
Je n'arrive à récupérer correctement la réponse à la requête Ajax.
En gros ce que je récupère dans "data" c'est ma page html complète et je ne comprend pas pourquoi, j'ai également testé avec des exemples extrêmement simple :
Ajax (avec jQuery) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 $("#projectForm").submit(function(){ $.ajax({ type: "POST", url: "{{ path('ARprojects_addProject')}}", data: 'name=' + $("#newproject_nom").val(), datatype: 'json', success: function(data){ //ici je fais un alert juste pour vérifier ce que j'ai récupéré, et en fait je récupère le code html de la vue entière Oo alert(data); } }); return false; });
Controlleur :
J'ai remarqué que :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 public function statusAction (REQUEST $request) { if($request->isXmlHttpRequest()) { $response = new Response(json_encode(array('var' => 'test'))); $response->headers->set('Content-Type', 'application/json'); return $response; }else { return $this->indexAction(); } }
url: "{{ path('ARprojects_addProject')}}",
me donne une url du style :
http://localhost/ar27005/symfony/web...s%27)%20%7D%7D
Donc j'ai l'impression que la fonction path n'est pas interprétée par twig.
Merci à l'avance pour votre aide ! =o
Partager