我有一个用Ajax调用的控制器。 在这个控制器里面,我有一个条件,比如
if($a == 10){
return $this->redirectToRoute('form_finish');
}
但是当条件满足时,我没有重定向
答案 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;}
希望它对某人有帮助