Ich füge eine weitere Ansichtsseite (mit Ajax-Anfrage) in meine vorhandene Ansichtsseite ein, so wie es hier gemacht wird -> $("divId").html(data); Hier ist data meine Ansichtsseite, die ich mit dem Ajax-Aufruf erhalte. Meine Frage ist, kann ich das 'Layout' entfernen oder es als Layout = Null festlegen, für diese mit Ajax zurückgegebene Ansichtsseite?
Antwort
Zu viele Anzeigen?In der Controller-Aktion können Sie eine PartialView
zurückgeben. Dadurch wird nur der HTML-Code aus der Ansicht an den Client gesendet, ohne den Code des Layouts. Sie können Ihre Aktion auf diese Weise umsetzen:
public ActionResult MyAction()
{
if (Request.IsAjaxRequest())
{
return PartialView();
}
return View();
}
So können Sie dieselbe Aktion für eine normale und eine Ajax-Anfrage verwenden.