roman lenz: werte an popup übergeben geht nur mit alert

hi hi

ich möchte an ein popup werte übergeben. das ganze funk aber nur mit einem alert ohne den alert wird kein wert übergeben.

kann mir jemand erklären was der alert bewirkt und wie ich den wert richtig (ohne alert) übergebe?

besten dank

bis bis roman

_code 1_
<html>
<head>
  <title>Impuls Verarbeitung</title>
  <meta http-equiv="cache-control" content="no-cache">
  <meta http-equiv="pragma" content="no-cache">
  <meta http-equiv="expires" content="0">
  <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">

<SCRIPT  language="JavaScript">
function fen_op(x,y,z){
        parameter="left=150,top=10,width="+x+",height="+y;
        ff=window.open(z ,"fenster1",parameter);
alert(ff);
ff.document.bemerkungen.bemerk.value="ford";
        }
function fen_co(){
        ff.close()
        }

// end-->
</SCRIPT>

</head>
<body>
<form name="impuls" action="puls_test.pl" method="post" enctype="multipart/form-data">

<input type="text" name="bemerk" value="">

<input type="button" value="Bemerkungen" onclick="fen_op(300,500,'../../puls/eingaben.html');">

</form>

</body>
</html>

_code2_
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <title>Eingaben</title>
  <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
  <meta http-equiv="cache-control" content="no-cache">
  <meta http-equiv="pragma" content="no-cache">
  <meta http-equiv="expires" content="0">
<SCRIPT  language="JavaScript">
function eingabe() {
  opener.document.impuls.bemerk.value= document.bemerkungen.bemerk.value;
  close();
}
// end-->
</SCRIPT>
</head>
<body>
<form name="bemerkungen">
               <input type="button" onClick=eingabe() value="speichern"><br>

<input type="textarea" name="bemerk" cols="50" rows="10" value="" ><br>

</form>

</body>
</html>

_ende_

  1. Sup!

    function fen_op(x,y,z){
            parameter="left=150,top=10,width="+x+",height="+y;
            ff=window.open(z ,"fenster1",parameter);
    alert(ff);
    ff.document.bemerkungen.bemerk.value="ford";
            }

    Ich stelle mir das so vor: Das Window-Open kehrt zurück, wenn es ein Handle für das Fenster an ff übergeben hat. Dann fängt im Hintergrund der Browser an, das Dokument in das Fenster vom Handle ff zu laden, zu parsen, zu interpretieren... und das dauert.
    Wenn nun etwas an ff.document.bemerkungen.bemerk.value zugewiesen wird, bevor der Brower mit laden, parsen, interpretieren fertig ist, dann geht die Zuweisung wohl verloren.
    Durch das alert wird die Zuweisung verzögert und somit möglich, weil dann der Browser mit laden, interpretieren etc. fertig ist.
    Klassischer Fall von "race condition".

    Gruesse,

    Bio

    --
    Die Welt will betrogen sein - Aristoteles