Wert in neues Fenster übertragen
Stefan
- javascript
Hi Leute!
Ich möchte in ein neu geöffnetes Fenster einen Wert aus einem Formular übertragen, wenn das Formular abgeschickt wird.
Ich benutze dann folgenden Code:
function putinumber(inumber)
{
Fenster.document.formular.ideafield.value = inumber;
alert(Fenster.document.title);
}
function openemp()
{
var inumber = document.form1.ideafield.value;
Fenster = window.open("ZS_ZTQS_EDIT_MAN.html", "AntwortFenster",
"width=600,height=100,scrollbars=1,resizable=1,location=0,directories=0,toolbar=0,status=0,menubar=0");
Fenster.focus();
window.setTimeout("putinumber(inumber)",60000);
}
Bekomme aber folgende Fehlermeldung:
line 37:
Fenster.document.formular has no properties.
Ich habe eben mit der setTimeout probiert, das das zweite Fenster fertig aufgebaut ist, wenn ich darauf zugreife, aber das funktioniert auch irgendwie nicht.
Über opener geht es nicht, da sich die erste Seite ja neu aufbaut, wenn man den Abschicken-Button drückt
Hi Leute!
Ich möchte in ein neu geöffnetes Fenster einen Wert aus einem Formular übertragen, wenn das Formular abgeschickt wird.
Ich benutze dann folgenden Code:
function putinumber(inumber)
{
Fenster.document.formular.ideafield.value = inumber;
alert(Fenster.document.title);
}function openemp()
{
var inumber = document.form1.ideafield.value;
Fenster = window.open("ZS_ZTQS_EDIT_MAN.html", "AntwortFenster",
"width=600,height=100,scrollbars=1,resizable=1,location=0,directories=0,toolbar=0,status=0,menubar=0");
Fenster.focus();
window.setTimeout("putinumber(inumber)",60000);
}Bekomme aber folgende Fehlermeldung:
line 37:Fenster.document.formular has no properties.
Ich habe eben mit der setTimeout probiert, das das zweite Fenster fertig aufgebaut ist, wenn ich darauf zugreife, aber das funktioniert auch irgendwie nicht.
Über opener geht es nicht, da sich die erste Seite ja neu aufbaut, wenn man den Abschicken-Button drückt
Hallo !
Vermutlich ist auch das das Problem, denn wenn sich die Seite neu aufbaut, wird auch das script neu aufgebaut und somit alle Variabeln.
Versuch doch mal in die openemp() Funktion aufzuhalten.
Mit sowas wie:
// Warten bis das document und das formular existieren
while(!Fenster.document && !Fenster.document.formular){;}
Struppi
Das zweite Fenster wurde immer erst aufgebaut, nachdem die openemp() komplett abgearbeitet wurde.
Ich habe mein Problem aber jetzt so gelöst, wie es Hatto von Hatzfeld <a href="http://www.teamone.de/selfaktuell/artikel/wertueb.htm">hier</a> beschreibt.
Die Übergabe erfolgt über den Fensternamen, nur daß ich vom 2. Fenster einfach über opener auf das erste Fenster zugreife.
Wenns interessiert, hier der Code:
1. Datei:
function openemp()
{
var inumber = document.form1.ideafield.value;
self.name = inumber;
alert("self.name = " + self.name);
Fenster = window.open("ZS_ZTQS_EDIT_MAN.html", "AntwortFenster",
"width=600,height=100,scrollbars=1,resizable=1,location=0,directories=0,toolbar=0,status=0,menubar=0");
Fenster.focus();
}
2. Datei:
var zahl=parseInt(opener.name);
window.document.formular.ideafield.value = zahl;
Und Bingo, die Zahl steht im Formular.
Danke nochmal für die Tipps!
Ciao,
Stefan
Hallo
Schau doch mal in der Forumsauslese nach...... da ist die Wertübergabe gut beschrieben.
Dabei wird der übergebene Wert an die URL angehängt und in der neuen Seite wieder
ausgelesen. Das müsste Dir helfen das Zeitproblem zu umgehen.
Oder schau dir mal die Seiten http://members.aol.com/vhsf/l_aufnah.htm und
http://members.aol.com/vhsf/hinweis1.htm an. Zwischen denen wird auch ein Wert
übergeben. Vielleicht hilft Dir das weiter.
Gruß
Jürgen