我正在开发一个Web应用程序。我有应该从网上创建和编辑的实体(非常经典,不是)。
所以我想使用Symfony提供的表单生成(使用Type和Handler),但我不想简单地以标准方式打印它们。我想从jquery中调用这些表单,以便我可以在jQuery插件中使用验证等,例如 jEditable 。
因此,我认为最好的方法是将我的表单作为json发送到jquery函数,该函数将把它放在我的HTML元素中。
我做了什么:
jQuery的:
$.get("getorganisationform/"+curOId, function(data){
if(data.responseCode==200 ){
$( "#innerModal" ).append(data.form);
}
});
控制器:
$form = $this->createForm(new OrganisationType, $organisation);
$formHandler = new OrganisationHandler($form, $this->get('request'), $this->getDoctrine()->getEntityManager());
if( $formHandler->process() )
{
return $this->redirect( $this->generateUrl('adminpanel') );
}
return new Response(json_encode($form), 200);
json_encode()实际上不发送任何内容,因为$ form是一个对象。现在我有几个问题:
提前致谢!
答案 0 :(得分:0)
你可以尝试这个来获取html表单内容。
return new Response(
json_encode(
array(
'form' => $form->createView(),
'responseCode' => 200
)
),
200
);
答案 1 :(得分:0)
return $this->render('MyBundle:Admin:form.html.twig', array(
'form' => $form->createView(),
));