Refresh des Opener Window, aber dann das Problem....

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Refresh des Opener Window, aber dann das Problem....

    Hallo Leute,

    ich habe ein kleines Problem. Aus einem Fenster rufe ich ein Popup auf. Dort sind Links. Per Klick wird ein Wert an das Opener Window geschickt und das Popup geschlossen.

    Code:
    <script language="JavaScript">
    <? if ($_GET["reload"]) echo "opener.location.reload(true);";?>
    
    targetName = opener.document.getElementById("contactname");
    targetID   = opener.document.form1.contactid;
    
    function documentSelected(id, name)
     {
    	targetName.innerHTML = name;
    	targetID.value = id;
    	window.close();
    	return true;
    }
    </script>
    
    <a href="javascript:documentSelected(1,'test');">
    Soweit so gut. Jetzt gibt es auch Situationen, wonach weiter Aktionen ausgeführt werden. Dabei wird aus dem Popup ein PHP-Script aufgerufen, der nach Abschluss wieder die Ausgangsseite des Popup mit der $_GET Variable "reload" aufruft. Dabei wird das Opener Window aktualisiert. Funktioniert auch.

    Nur kann nach dem aktualisieren des Opener Windows die Funktion "documentSelected" den Wert nicht mehr ans Opener Window übergeben. Leuchtet mir auch ein, da nach dem Reload das Fenster ein anderes ist.

    Meine Frage ist nun, wie ich trotz reload des Opener Windows weiterhin Werte mit der "documentSelected" Funktion aus dem Popup übergeben kann.

    Besten Dank!
    Zuletzt geändert von mr_apollon; 24.09.2010, 11:48.

  • #2
    Würde es helfen im Opener ein Frameset oder einen iFrame zu nutzen? Frame A (bzw. der iFrames) enthält das, was du optisch darstellen willst und kann neu geladen werden, Frame B enthält die "Logik" (Javascript) und bleibt immer bestehen. Das Popup wird von Frame B geöffnet. Popup und Frame A sind also immer durch Frame B verbunden, egal was sich wo neu läd, hauptsache du stößt alle Aktionen aus bzw. über Frame B an:
    Code:
    Frame A sagt Frame B: öffne PopUp
    PopUp sagt Frame B: lade Frame A neu
    Frame A sagt Frame B: mache irgendwas mit PopUp
    usw...
    Das ist allerdings nur eine schnelle Idee für einen Workaround. Finde ich selber nicht so toll, aber naja, dürfte funktionieren.
    not null blog - a developer's worries & solutions

    Kommentar


    • #3
      Huhu,

      danke für die Antwort. Ist mir leider aber etwas zu dirty

      Hat jemand vielleicht noch ne Idee?

      Ich könnte mir vorstellen, dass das Opener Fenster beim Reload prüft ob das Popup exisitiert, wenn ja wird es ebenfalls aktualisiert. Damit müsste der Bezug ja wieder bestehen. Nur weiss ich nicht wie ich das anstellen kann.

      Vielleicht kann mir jemand helfen oder hat eine besser Idee.

      Kommentar


      • #4
        Overlay statt Popup.

        Kommentar

        Lädt...
        X