Home > asp.NET, html/js > JS/asp.NET :: Modales Popup

JS/asp.NET :: Modales Popup

Nachdem ich ja bereits das “puristische” modale Popup beschrieben habe, hier nun die elegantere Lösung.

Zunächst benötigen wir ein einfaches Javascript, dass wir im Head-Bereich der aufrufenden Seite platzieren:

<script type=“text/javascript“>
function Dialog()
   {
      var ret=window.showModalDialog(“popup.aspx”,window, ↙
      “dialogHeight: 500px; dialogWidth: 800px; status: No; center:yes”
   );

   if (ret == “1″)
      {
         document.location.href = document.URL;
      }
   }
</script>

Der Aufruf dieses modalen Popups kann über zwei Wege erfolgen:

- per Link im html-Quelltext:

<a href=”javascript:void(0);” onClick=”Dialog();”>Popup öffnen</a>

- per Aufruf durch einen <asp:Button>:

Um den Aufruf durch einen <aps:Button> zu realisieren muss dem Button ein Attribut zugewiesen werden:

protected void Page_Load(object sender, EventArgs e)
{
    myButton.Attributes.Add(“onClick”, “javascript:Dialog();”);
}

Dieses Attribut bewirkt nun, dass beim Klicken des Buttons das Javasript Dialog() aufgerufen werden.

Hinweis:
In der aufgerufenen Seite (also im Popup) sollte im Head folgender Tag platziert werden:

<base target=“_self”/>

Wenn der Tag fehlt, öffnet jeder Link und jeder Klick auf einen Button ein neues Browserfenster ausserhalb unseres modulen Popups.

  1. Bisher keine Kommentare
  1. Bisher keine Trackbacks

Spam protection by WP Captcha-Free