5 Stimmen

Asp.Net MVC 4: Können wir Layout = null setzen, wenn wir HTML-Daten aus einem AJAX-Aufruf laden möchten?

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?

11voto

DanielB Punkte 19472

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.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X