Aldo: Seite refreshen

Hallo, ich habe ein popup und will, dass sich die Seite, die das popup erzeugt (die den Link hat), refresht wird, wenn ich das popup schliesse (ok drücken). Ich habe im forum eine Variante gesehen, die allerdings den framenamen mit einbezog, ich habe aber keine frames.
Kann mir jemand helfen?

Danke, Aldo

  1. Hallo Aldo!

    Mit dem JavaScript-Objekt kannst Du auf jenes Fenster zugreifen, welches das Popup geöffnet hat. Also zB

    opener.close();

    schließt das aufrufende Fenster.

    In deinem Fall würde ich eine onUnload-Funktion im Popup einfügen, die einfach das Hauptfenster nochmal mit der entsprechenden Url versorgt, bevor das Popup sich schließt.

    opener.location.replace('URL_der_Seite');

    Hoffe, das passt so,

    mfg

    norbert  =:-)

    Hallo, ich habe ein popup und will, dass sich die Seite, die das popup erzeugt (die den Link hat), refresht wird, wenn ich das popup schliesse (ok drücken). Ich habe im forum eine Variante gesehen, die allerdings den framenamen mit einbezog, ich habe aber keine frames.
    Kann mir jemand helfen?

    Danke, Aldo

    1. Hi Norbert!

      Vielen Dank für die Antwort. Also ich verstehe das Prinzip, weiss aber nicht, wo ich das einzufügen habe.
      Das File mit dem Popup hat folgenden Code:

      <?php

      print "<html>";
      print "<head>";
      print "<title>Remove / Update</title>";

      print "<script language="JavaScript" type="text/javascript">";

      print "function info(url) { ";
      print "del = open(url, "popup", "width=300,height=350,resizable=no, scrollbars=no,top=135,left=135"); ";  // popup wird erzeugt
      print "}";

      print "</script>";

      print "</head>";
      print "<body>";

      // php code...

      print "</body>";
      print "</html>";
      ?>

      wo muss ich die Zeile
      opener.location.replace('URL_der_Seite');
      einfügen, im <body> tag?
      und ist url der seite einfach die seite, die refresht werden soll? hab das mal probiert, hat aber nicht geklappt.

      Danke und Gruss, Aldo

      1. Hallo Aldo!

        Im aufrufenden Fenster musst Du einfach nur das Popup öffnen - dies sollte ja schon funktionieren.

        In der HTML-Datei, die im Popup (!) angezeigt wird, musst Du dann veranlassen, dass beim Schließen ebendieses Fensters was passiert - also (im Code des Popups):

        ...
        <script blabla>

        function refreshOpener()
        {
           /* Hier wird dem Hauptfenster mitgeteilt, die
              ursprüngliche URL nochmal zu laden - entspricht
              also refresh */

        opener.location.replace('URL_der_Hauptseite');
        }

        </script>
        ...

        Damit diese Funktion beim Schließen des Popups ausgeführt wird, musst du den entsprechenden Aufruf im body-Tag des Popups platzieren:

        <body onUnload="refreshOpener();">

        norbert =:-)

        Hi Norbert!

        Vielen Dank für die Antwort. Also ich verstehe das Prinzip, weiss aber nicht, wo ich das einzufügen habe.
        Das File mit dem Popup hat folgenden Code:

        <?php

        print "<html>";
        print "<head>";
        print "<title>Remove / Update</title>";

        print "<script language="JavaScript" type="text/javascript">";

        print "function info(url) { ";
        print "del = open(url, "popup", "width=300,height=350,resizable=no, scrollbars=no,top=135,left=135"); ";  // popup wird erzeugt
        print "}";

        print "</script>";

        print "</head>";
        print "<body>";

        // php code...

        print "</body>";
        print "</html>";
        ?>

        wo muss ich die Zeile
        opener.location.replace('URL_der_Seite');
        einfügen, im <body> tag?
        und ist url der seite einfach die seite, die refresht werden soll? hab das mal probiert, hat aber nicht geklappt.

        Danke und Gruss, Aldo

        1. Hi Norbert, hat prima geklappt! Vielen Dank für Deine Erklärungen.
          Gruss, Aldo