2014-11-27 2 views
0

"로그인"작업에서 "홈"작업으로 리디렉션해야합니다. ajax에서 "로그인"액션이 호출됩니다. 그래서 "로그인"액션이 "홈"액션으로 리디렉션됩니다. 그러나 "Login"액션이 ajax에서 호출되므로 Ajax 성공 콜백이 실행 중입니다. 대신 로그인 액션에서 홈 액션으로 직접 리디렉션하고 싶습니다. "로그인"작업 자체에서이를 수행 할 수있는 방법이 있습니까?ajax에서 호출 된 작업에서 리디렉션하는 방법

리디렉션하는 유일한 방법은 "성공 콜백에서 리디렉션"입니까? 여러보기로 리디렉션해야하는 여러 조건이 있습니다.

window.location.href = '@Url.Action("Home","ControllerName")' 

쓰기 아약스 성공 콜백 내부 코드 위 : 나는 액션 자체에서 리디렉션 할 수있는 경우와 같이 당신은 아약스 성공 콜백에서 홈 액션로 리디렉션 할 수 있습니다

+0

아약스 성공 콜백에서 '집'으로 리디렉션 할 수 없습니까? – markpsmith

+0

'window.location.href = '/ Home/Index'; '를 사용할 수 있지만 컨트롤러에서 보통 제출과'RedirectToAction();'을 사용하지 않는 이유는 무엇입니까? –

+0

당신은 json과 같이 액션에서 아약스로 다른 조건을 전달하고 아약스 성공 콜백에서 조건을 확인한 다음 내 대답에 표시된대로 원하는대로 리디렉션 할 수 있습니다. –

답변

1

그래서 그것은 좋은 것입니다.

편집 : - 당신이 정상적인 양식을 수행 제출하지만이 답변에서와 같이 다음 리디렉션하기 전에 조건을 테스트하려는 경우, 코드를 시도 그래서 여기 당신이 아약스 호출을 수행 할 때

당신은 RedirectToAction()을 사용할 수 있습니다 Json처럼 액션에서 아약스 요청에이 조건을 보내고 아약스 콜백에서 조건을 확인한 다음 적절한 컨트롤러 조치로 리디렉션하십시오.

관련 문제