Ich benutze eine Teilansicht für die Anmeldung und möchte den Benutzer auf eine neue Seite bei Erfolg umleiten und die Validierungsfehler in der Teilansicht zeigen, wenn das Modell ungültig ist. Das Ajax-Ziel wird aktualisiert und Erfolg oder Misserfolg. Wenn das Modell gültig ist, zeigt es die gesamte neue Seite im Aktualisierungsziel an, aber ich möchte, dass es auf die neue Seite umleitet. Ich habe Redirect und RedirecttoAction versucht, aber es bringt nicht die gewünschten Ergebnisse. Irgendwelche Ideen, was ich tun kann, um ein Ajax-Update zu erhalten, um auf eine neue Seite umzuleiten, das Ziel nicht zu aktualisieren. Lassen Sie es mich auch wissen, wenn ich den falschen Ansatz verwende.Ajax Redirect auf Seite statt Update Ziel
Teilansicht Code:
<% 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" />
<% } %>
Hier ist der entsprechende Code-Controller:
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);
}