Philipp Giere: window.open geht nicht ohne vorheriges alert()

Beitrag lesen

Hallo Raik!

Es scheinen in der Tat ein Timingprobleme zu sein. Merkwuerdigerweise funktioniert auch alles, wenn ich nach dem window.open noch ein location.href auf das erzeugte Objekt schicke.

Gruss aus Wiesbaden!
Philipp

Hallo, Philipp!

onChange ... das andere Fenster geöffnet ... wenn man ... alert() vorher aufruft.

was macht das alert? eine zeitverzögerung.
was passiert in der zeit? das zweite fenster baut sich auf.
worauf musst du also mit dem übertragen der daten warten? darauf, das sich das zweite fenster fertig aufgebaut hat.
wie machst du das? 4 möglichkeiten:
   1. du prüfst nach einem timeout immer wieder, ob in dem neuen fenster schon alle von dir benötigten elemente existieren und startest dann die datenübertragung.
   2. du löst die datenübertragende funktion aus dem zweiten fenster heraus aus, undzwar mit einem script, das _unter_ den benötigten elementen steht.
   3. du übergibst die felder und deren werte in der url des neuen fensters, von wo aus sie ein script in diesem fenster wieder ausliest.
   4. du schreibst die daten in einen cookie, von wo aus sie ein script in diesem fenster wieder ausliest.

freundl. Grüsse aus Berlin, Raik