Używam częściowego widoku do logowania i chcę przekierować użytkownika na nową stronę po pomyślnym zakończeniu i pokazać błędy sprawdzania poprawności w częściowym widoku, jeśli model jest nieprawidłowy. Cel ajax jest aktualizowany i sukces lub porażka. Jeśli model jest prawidłowy, pokazuje całą nową stronę w celu aktualizacji, ale chcę ją przekierować na nową stronę. Próbowałem przekierowania i przekierowania, ale nie uzyskałem pożądanych rezultatów. Wszelkie pomysły na to, co mogę zrobić, otrzymuję aktualizację ajaxową, aby przekierować na nową stronę, a nie aktualizować celu. Ponadto, daj mi znać, jeśli używam niewłaściwego podejścia.Przekierowanie Ajax do strony zamiast Aktualizowanie celu
Częściowy widok Kod:
<% using (Ajax.BeginForm(
"LogOn",
null,
new AjaxOptions {
HttpMethod = "POST",
UpdateTargetId = "SignInForm"
},
new {
id = "SignInForm", ReturnUrl = Request.QueryString["ReturnUrl"]
})) { %>
<<Page HTML Controls>>
<input type="submit" value="Log On" />
<% } %>
Oto odpowiedni kod kontrolera:
public ActionResult Logon(LogOnModel model,string returnUrl)
{
if (ModelState.IsValid)
{
//Login Logic Code
if (!String.IsNullOrEmpty(returnUrl))
{
return Redirect(returnUrl);
}
else
{
return RedirectToAction("Index", "App");
}
}
// If we got this far, something failed, redisplay form
if (Request.IsAjaxRequest())
return PartialView("LogOnControl");
return View(model);
}