cargar vista usando ajax symfony2

Soy muy nuevo en Symfony2 y tengo algunos problemas para cargar una vista usando ajax cuando el usuario hace clic en un div. Al usar Firebug puedo ver que los datos se devuelven, pero no puedo agregar el resultado en la página.

Mi código: // controlador predeterminado

public function indexAction($num, Request $request) { $request = $this->getRequest(); if($request->isXmlHttpRequest()){ $content = $this->forward('PaginationBundle:Default:ajax'); $res = new Response($content); return $res; } return $this->render('PaginationBundle:Default:index.html.twig', array('num' => $num)); } public function ajaxAction() { return $this->render('PaginationBundle:Default:page.html.twig'); } } 

Mis Js: Al hacer clic en #target, me gustaría cargar page.html.twig en mi div

 $("div#target").click(function(event){ t = t +1; $.ajax({ type: "POST", cache: "false", dataType: "html", success: function(){ $("div#box").append(data); } }); }); 

Estoy usando isXmlHttpRequest () en mi controlador para detectar si se trata de una solicitud ajax para cargar ajaxAction. Obtuve esa vista en firebug pero no se anexó en mi caja div #. div # caja existe en index.html.twig

Gracias a todos por adelantado

En su $ (“div # target”). Haga clic en (evento (evento) función que no especificó el parámetro url en la llamada ajax, y otra cosa es que debe especificar un argumento dentro del parámetro ‘success’ de la llamada ajax.

 $("div#target").click(function(event){ t = t +1; $.ajax({ type: "POST", url: "{{path('yourpath-means header name in routing.yml')}}", cache: "false", dataType: "html", success: function(result){ $("div#box").append(result); } }); }); 

Espero que esto ayude … Feliz encoding

Esto no tiene nada que ver con Symfony sino con tus opciones de ajax. Sin embargo, Pece tiene razón: puede usar el retorno de §this-> forward directamente como un objeto de Respuesta.

El problema se encuentra dentro de sus opciones de ajax. Debe pasar el objeto de datos dentro de su función interna o los datos son simplemente nulos. Prueba esto:

 success: function(data){ $("div#box").append(data); } 

No recibo su avance para tratar la llamada AJAX. Prueba esto :

 if($request->isXmlHttpRequest()){ return $this->forward('PaginationBundle:Default:ajax'); } 

Controller :: forward () ya devuelve un objeto de respuesta;)