Symfony2将另一个动作中的动作的响应返回给JavaScript

时间:2012-09-28 10:08:34

标签: php javascript forms symfony entity

在我的应用程序中,我有一个功能,需要在更新操作上重新加载整个表单。我以为我可以向特殊操作发出一个AJAX请求,并在该操作中调用生成表单但基于不同参数的原始操作。

如何使用不同操作的HTML输出响应JavaScript请求?

我尝试过这样的事情:

if ($request->isXmlHttpRequest()) {
    return $this->editPageContentAction($responseObjects[0]->getId());
}

但它不起作用(Controller必须返回响应)。

描述我想要实现的目标的最简单方法是:

  • 我有一个表单,用一个选择“从另一个实体复制内容”编辑一个实体,其中包含其他输入列表
  • 当用户选择我想用AJAX重新加载的另一个实体时,我目前正在使用的表单填充了选定的实体
  • 我不想将用户重定向到使用所选实体编辑实体表单,我想用现有实体中的数据预填充新实体表单,所以尽管我可以使用已经存在的操作来编辑该实体。
  • Javascript函数只会使用新表单更新html。

1 个答案:

答案 0 :(得分:1)

if ($request->isXmlHttpRequest()) {
    return new Response($this->editPageContentAction($responseObjects[0]->getId()));
}

当你的editPageContentAction方法返回html输出时。