undefined?? hilfe!
paardi
- javascript
hi,
ich möchte ein bisschen im javascript üben und hab jetzt mit den for-schleifen zu tun. so weit so gut. Ich hab mir eine Übung mit quadratzahlen gemacht. So klappt alles supi, bis auf dieses verflixte undefined am anfang meiner quadrataufzählung :-(
Hier das script:
---------------------------------------------
<html>
<head>
<title>quadratzahlen</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="Javascript">
<!--
var quadrat, iZahl;
function quaZahl()
{
for(i=1;i<=iZahl;i++)
{
quadrat=i*i;
document.write("<tr><td align='right'><font size='+2'><b>");
document.write(i);
document.write("</td><td align='center'><font size='+2'><b>");
document.write(" * ");
document.write("</td><td align='right'><font size='+2'><b>");
document.write(i);
document.write("</td><td align='center'><font size='+2'><b>");
document.write(" = ");
document.write("</td><td align='right'><font size='+2'><b>");
document.write(quadrat);
document.write("</td></tr>");
}
}
iZahl = prompt("Ausdruck von Quadratzahlen. \nBitte geben Sie eine Zahl zwischen 1 und 25 ein:","");
iZahl = parseInt(iZahl);
if (isNaN(iZahl))
{
alert("Falsche Eingabe!");
}
-->
</script>
</head>
<body>
<h1>Die Quadratzahlen</h1>
<table>
<script language="Javascript">
document.write(quaZahl());
</script>
</table>
</body>
</html>
-----------------------------------
Ausgabe:
Überschrift
---undefined---
aufzählung
------------------------------
und der mozilla hilft mir auch nicht weiter - in der javascript- Konsole sieht er keinen fehler??
was hab ich bloss übersehen??
danke paardi
Hallo paardi!
Lustiges Problem hast du da....
Guck mal: Du schreibst
<script language="Javascript">
document.write(quaZahl());
</script>
dabei wird zwar quaZahl() ausgeführt, aber auch ein Rückgabewert erwartet, der dann mit document.write ausgegeben wird.
Da du aber keinen Wert zurück gibst, ist document.write(quaZahl())
undefiniert.
Lösung:
<script type="text/javascript" language="Javascript">
quaZahl();
</script>
Gib immer einen type an!
(Als test kannst du ja mal bei deinem jetzigen Script am Ende von quaZahl return("hurra"); schreiben, dann wird vielleicht noch klarer
was ich meine.
Viel Spass,
Richard
uuuuupsi...
Denkfehler meinerseits *schäm*
Jedenfalls herzlichen Dank ;-)
ciao paardi