wake-up-neo.com

ASP.NET MVC - Best Practice für modale Dialoge / Popups

Ich suche nach dem gängigsten Weg, um modale Dialoge in ASP.NET MVC zu erreichen.

Ich versuche beispielsweise, ein Element auf meiner Seite "Liste" auszuwählen, damit die Seite "Details" als Popup-Fenster über der Liste und NICHT als neue Seite angezeigt wird. Ich suche keinen Hack. Ich möchte, dass es eine Lösung ist, die dem ASP.NET MVC-Muster folgt. Ich würde es auch vorziehen, nicht außerhalb von jQuery und ASP.NET Ajax zu arbeiten (keine Plugins, es sei denn, dies ist eine bewährte Methode).

61

Lunchys Dialogvorschlag ist Nizza. Stellen Sie einfach eine Ajax-Anfrage an Ihre Controller-Aktion und lassen Sie die Aktion zurückgeben, was Sie anzeigen möchten, wie eine Teilansicht mit etwas HTML-Formatierung. Fügen Sie dann diesen HTML-Code in Ihr Dialogfeld ein, oder was auch immer Sie anzeigen möchten, und zeigen Sie ihn an.

20
scottm

Die jQuery-UI-Bibliothek verfügt über ein Dialog-Widget, das ich für solche Zwecke verwende. IMO ist zwar ein Plug-in, aber die beste Vorgehensweise besteht darin, kein eigenes Dialog-Widget zu rollen.

http://jqueryui.com/demos/dialog/

37
Casey Williams

Eines der Dinge, die mit MVC Hand in Hand gehen, sind RESTful-URLs. Wenn dies der Fall ist, besteht die "Standard" -Methode darin, dass die Details eine neue Seite mit einer eigenen, REST-fähigen (und mit Lesezeichen versehenen) URL aufrufen, anstatt einen Dialog über die Seite zu führen. Sie könnten sicherlich einen "Detailvorschau" -Dialog im Kontext der Liste durchführen, aber wenn Sie mit den Details interagieren möchten, würde ich in Betracht ziehen, eine vollständige Anfrage zu stellen und die Details auf einer eigenen Seite abzurufen.

6
tvanfosson