Parameter + 3 Funktionen
Homer
- javascript
0 Rico0 Homer0 Jürgen Berkemeier0 Homer0 Rico
Hallo !
Ich übergebe einen Parameter an eine Funktion, diese ruft eine neue Funktion auf, wo der Parameter mitgegeben werden soll und das gleiche nochmal.
Ab der 2ten Funktion ist der Parameter aber undefined ?
<script language="JavaScript">
<!--
var x;
function parameter1(x)
{
alert(x+'1');
setTimeout('parameter2()',10);
}
function parameter2(x)
{
alert(x+'2');
setTimeout('parameter3(x)',10);
}
function parameter3(x)
{
alert(x+'3');
}
//-->
</script>
</head>
<body bgcolor="#ffffff" text="#000000">
<a href="javascript:parameter1('hallo')">Link</a>
</body>
</html>
Hi,
ist ja logisch, schau dir mal die Zeile an:
setTimeout('parameter2()',10);
fehlt da nicht was? Vielleicht ein x
...parameter2(x)... und schon funtz.
hoho
Zwar ein blöder Fehler, aber leider nicht der auschlaggebende, es funtz immer noch nicht ?
Hallo Homer,
lass einfach das "setTimeout" weg. Wenn die Funktion zeitverzögert aufgerufen wird, ist beim Aufruf die Variable x nicht mehr bekannt.
Übrigens kannst Du dann die Zeile "var x;" auch weglassen.
Gruß, Jürgen
setTimeout("parameter2(' "+x+" ')",10);
so klappt es !
ich weiss ja nicht was du machen möchtest, aber nacheinander MessageBoxen aufrufen kannst du auch einfacher haben, sogar mit fall-unterscheidung -> siehe switch()
<script language="JavaScript">
<!--
function parameter1(x,z){
z++;
if(z<=3){
alert(x+z);
parameter1(x,z);
}
}
//-->
</script>
<a href="javascript:parameter1('hallo',0)">Link</a>