Ajax Controller symfony中的RedirectToRoute

时间:2016-06-24 13:47:13

标签: ajax symfony

我有一个用Ajax调用的控制器。 在这个控制器里面,我有一个条件,比如

if($a == 10){
    return $this->redirectToRoute('form_finish');
}

但是当条件满足时,我没有重定向

2 个答案:

答案 0 :(得分:2)

您在ajax中调用控制器,但是您是否管理响应。

如果满足条件,您必须从浏览器重定向或处理ajax响应并在DOM中加载内容。

答案 1 :(得分:0)

我通过做这样的事情解决了它:

在控制器中,我将重定向处理程序放在Jsonresponse中:

//return $this->redirectToRoute('fos_user_security_logout');
$response = new JsonResponse(array(
'route' => $this->get('router')->generate('fos_user_security_logout'),
'message'    => 'You may choose on option'));
return $response;

在ajax中

success: function(response,xhr){
//This is for the redrection in front page
if(response.route) { window.location.href=response.route;}

希望它对某人有帮助