Wie kann ich beim Klicken auf eine HTML-Schaltfläche eine Teilseite rendern?

8

Ich bin neu in MVC3.0 und muss jquery verwenden. Ich frage mich, jemand kann helfen, wie kann ich eine Teilansichtsseite beim Klicken auf eine HTML-Schaltfläche rendern?

Ich weiß, dass es wirklich einfach ist, die Schaltfläche könnte "E-Mail an" heißen, was zu einer Teilansicht namens "E-MailForm" führt. Aber ich brauche Hilfe.

    
OBL 08.09.2011, 17:57
quelle

2 Antworten

14

Ich würde sagen, @ smdragers Antwort ist die gewünschte Route, wenn möglich. Wenn Sie benötigen, um html von einer Ajax-Anfrage zu bekommen, gibt es jedoch viele Möglichkeiten, dies zu tun ... hier ist ein Beispiel für eins:)

In Ihrer Vorlage haben Sie eine Schaltfläche oder einen Link und einen div-Container für Ihren Inhalt:

%Vor%

Sie benötigen ein schnelles JavaScript, um die clientseitige Funktionalität zu verkabeln:

%Vor%

Dann brauchen Sie in Ihrem Controller eine Aktion, die Ihren Teil zurückgibt:

%Vor%

Stellen Sie sicher, dass die URL, die in den JavaScript-Aufruf $.get übergeben wurde, auf die Aktion verweist, die Ihren Teil zurückgibt.

Dies ist eine sehr einfache Implementierung, die leicht komplizierter werden könnte, wenn Ihre Situation komplizierter wird (Ausnahmenbehandlung, Parameterübergabe usw.), aber das allgemeine Layout funktioniert für mich, wenn ich eine einfache Ajax-Anfrage absetzen muss.

    
DMac the Destroyer 08.09.2011, 18:15
quelle
13

Sie könnten die Seite vor der Hand, aber innerhalb eines versteckten Divs rendern, oder Sie könnten AJAX verwenden, um sie nach dem Klick zu laden.

Versteckte Div

%Vor%

und ein Skript

%Vor%

Laden mit Ajax

Um dies zu tun, würden Sie ein ActionResult in einem Controller erstellen, der den partiellen. rendert.

%Vor%

und ein Skript

%Vor%     
smdrager 08.09.2011 18:06
quelle