Sven Rautenberg: Problem: Formular im Popup-Fenster

Beitrag lesen

Moin,

Das Hauptfenster ist Teil eines Framesets. Also schrieb ich:

<form name='Teilnehmer' action='$PHP_SELF' method='post' target='opener.frame[1]'>

Du verwechselst HTML-Fensternamen mit Javascript-Fensterobjekten.

Mit "target" werden die HTML-Fensternamen angesprochen. Das sind die Bezeichnungen, die bei Frames und IFrames mit dem name-Attribut definiert werden, und bei Popup-Fenstern ist es der zweite Parameter von window.open.

Als Standard-HTML-Fensternamen gibt es zusätzlich zu denen, die du selbst definiert hast, noch "_blank", "_self", "_parent" und "_top", welche die bekannten Funktionen haben.

Unter Javascript gibt es Fensterobjekte, welche aber nicht alle auch einen HTML-Fensternamen besitzen. Das erste Browserfenster beispielsweise hat keinen HTML-Namen, aber es kann von neuen Fenstern aus per Javascript mit "opener" angesprochen werden. Nur für diese Konstellation gibt es also keine Chance, ein Formular aus einem Popup in das gesamte Opener-Fenster zu schicken, weil der HTML-Name fehlt. Wenn im Opener-Fenster ein Frameset steht, dann aber kann man in jedes der einzelnen Framefenster auch aus dem Popup heraus ein Target definieren, weil die Fenster ja alle auch HTML-Namen haben.

- Sven Rautenberg