2016-08-05 5 views
0

in meiner MVC Aktion habe ichReturn PartialView mit Bootstrap modal deckt gesamte Elternansicht, anstatt nur in modal Rendering

return PartialView("partialView", model); 

Ich habe dies in der übergeordneten Ansicht:

<div id="myModal" class="modal fade in"> 
     <div id="modalContainer"> 

     </div> 
    </div> 

und den Körper das Modal in der Teilansicht.

Ich habe diese als Vorlage: Using Bootstrap Modal window as PartialView

Die modalen Lasten gut mit den richtigen Daten auf der Seite einreichen. Das Problem besteht darin, dass die Teilansicht mit dem Modal die gesamte übergeordnete Ansicht abdeckt und nicht nur das Modal anzeigt.

Es gibt im Wesentlichen das Modal mit einem leeren weißen Bildschirm.

Meine Frage ist, wie würde ich nur das Modal mit Daten zeigen, und verhindern, dass die Teilansicht die ganze Seite abdecken?

Danke eine Million!

+0

Stellen Sie sicher, dass die Ansicht eine Teilansicht ist, fügen Sie '' {{Layout = null; } '' in Teilansicht –

+0

Versucht es, das gleiche Ergebnis. Aber danke für den Vorschlag. –

Antwort

0

Meine Frage ist, wie würde ich zeige nur die modal mit Daten, und für die ganze Seite die Teilansicht verhindern?

Ich würde versuchen, das modale ohne Daten zu starten. Stellen Sie in erster Linie sicher, dass Ihr Modal angezeigt wird und etwas Inhalt zum Starten hat. Etwas Einfaches wie 'Daten laden ...' oder irgendetwas in Ihrem Modal HTML Start wird beim Rendern von Daten helfen. Sobald Sie sich mit Ihrem Controller-Code verbunden haben, können Sie den Code nach "Teilansicht zurückgeben" laufen lassen und Sie sollten NICHT in Ihren _Layout-Code treten.

Sobald Sie Ihre Teilansicht hinzufügen, tun Sie sich selbst einen Gefallen und wickeln Sie es mit einer Cascading Stylesheet (CSS) -Klasse, die es sehr offensichtlich macht, dass der Stil funktioniert. Etwas so einfaches sollte helfen.

+0

Styling funktioniert. Danke für den Tipp. Um es noch einmal zu wiederholen: Ich muss wissen, wie man die Teilansicht stoppt, indem man die gesamte Elternansicht abdeckt und nur das Modal zeigt. –

+0

Es gibt Stile, die "Überlauf" verhindern. Es gibt auch Stile, die "scrollen" anwenden. Sind Sie auf der Suche nach CSS? Wenn dies der Fall ist, fügen Sie dem Wrapper einen Stil hinzu. Überlauf: scroll ;. Lassen Sie mich wissen, ob das hilft. Modal by Design ist ein "Aufruf zum Handeln", der die "Seite" tatsächlich "abdeckt". – Programmer

+0

Wenn es um Bootstrap-Modale geht, decken sie einen Teil der Seite ab, aber Sie können immer noch den Inhalt um sie herum auf dem Hauptbildschirm sehen. Mein Modal zeigt sich und nimmt nicht den ganzen Bildschirm ein, aber irgendwie füllt die Teilansicht, in die das Modal geladen wird, den gesamten Bildschirm und blockiert die Elternansicht. Ich möchte in der Lage sein, die Elternansicht unter oder hinter dem Modal zu sehen, was das normale Verhalten ist. Ich glaube nicht, dass ich CSS dafür tun müsste, aber ich werde den Überlauf versuchen. –