Jörg Wittemeier: window.close + Elternfenster

Hallo !
Gibt weiter unten schon ein Thread, der leider ohne Erfolg blieb. Vielleicht weiß ja jemand eine Lösung:

In einem durch window.open geöffnetes Zusatzfenster sollen Daten an ein cgi geschickt werden und im Elternfenster ausgegeben werden. So weit klappt alles (durch target).
Aber wie schliesse ich autom. das Zusatzfenster?

Hab‚s mit
print "<td bgcolor=$BGT2 valign="top"><a href="$SHOPCGI?$SEND" target="main" onclick="window.self.close()">$INSERTPIC</a>\n</td>\n";
ausprobiert.
(Seite wird per cgi generiert)

Fenster schließt sich, aber nichts tut sich im target "main".
Lasse ich onclick="window.self.close() weg, funzt es im target "main" aber das Fenster bleibt offen!

Hier die URL (vorsicht, Baustelle)
http://www.goby.net/eCom
(->Badezubehöhr->auf "i" oben rechts klicken->im neuen Fenster ein Warenkorb anklicken)
Vielen Dank für Eure Mühe
Gruß
Jörg

  1. In einem durch window.open geöffnetes Zusatzfenster sollen Daten an ein cgi geschickt werden und im Elternfenster ausgegeben werden. So weit klappt alles (durch target).
    Aber wie schliesse ich autom. das Zusatzfenster?

    Zum Beispiel von der Seite aus, die das Ergebnis deines CGI verarbeitet. Einfach mit onLoad und dann das Fenster schliessen. Den Namen kennst Du doch. damit muss lediglich deine CGI Rueckgabe den kurzen javascriptcode dafuer enthalten.

    Viele Gruesse, Thomas Hieck

    1. Hi Thomas !

      Zum Beispiel von der Seite aus, die das Ergebnis deines CGI verarbeitet. Einfach mit onLoad und dann das Fenster schliessen. Den Namen kennst Du doch. damit muss lediglich deine CGI Rueckgabe den kurzen javascriptcode dafuer enthalten.

      Hab ich auch schon mal versucht.

      print "<html><head>\n<script language="JavaScript">\n";
      print "<!--\nfunction NaviFenster()\n{\n";
      print "win.close();\n";
      print "}\n// -->\n";

      print "</script>\n</head><body onLoad="NaviFenster()">\n";

      Funzte nicht, gab eine Fehlermeldung in der Statuszeile.

      Nun bin ich leider kein Javascript-Experte.
      Vielleicht ist ja ein Fehler drin.
      Gruß
      Jörg

      1. Hallo Joerg

        print "<html><head>\n<script language="JavaScript">\n";
        print "<!--\nfunction NaviFenster()\n{\n";
        print "win.close();\n";
        print "}\n// -->\n";

        print "</script>\n</head><body onLoad="NaviFenster()">\n";

        Funzte nicht, gab eine Fehlermeldung in der Statuszeile.

        Wenn Du dann in der Locationbar mal javascript: eingibst, siehst Du auch die konkrete Fehlermeldung. Dies funktioniert uebrigens nicht, weil in der neuen Seite alle Variablen der vorherigen Seite vergessen sind, also auch win. Fuer Dein Problem siehe bitte den Thread <../../sfarchiv/1999_2/t03556.htm>.

        Bye by Calocybe