Funktion zur Berechnung einer Summe

Jelduin

Grünschnabel
Hallo ihr lieben Helferlein.
Bin in die unendlichen Weiten des JavaScripten reingerutscht und stecke jetzt fest.
Folgendes Problem:


Ich muss ein HTML-Dokument mit einem Formular erstellen. Der Nutzer wird zur Eingabe einer positiven ganzen Zahl n aufgefordert. Per Knopfdruck wird eine Funktion zur Berechnung der Summe aufgerufen und das als Funktionswert zurückgegebene Ergebnis wird in einem Textfeld des Formulars ausgegeben.

Klingt ganz simpel, ist es aber nicht. Glaubt mir, ich bin am verzweifeln. Folgendes habe ich bereits geschrieben:


<html>
<head>
<title>AllEs mIst</title>
<meta name="author" content="s6705792">
<script language="JavaScript">
function summe (){
var su=0; for(var i=1; i<=x; i=i+1){su=su+i;}
{return su;}

}

</script>
</head>
<body bgcolor="#000000" text="#FFFFFF" link="#FF0000" alink="#FF0000" vlink="#FF0000">
Summos ausrechnos supos tollos juhuos!
<form name="summe">
<input type="text" name="eingabe" value="" size="2" maxlength="20"><br><br>
<input type="button" value="Summe" size="10" maxlength="20"
onclick="ausgabe.value = summe(eingabe.value)"><br><br>
<input name="ausgabe" value="" size="2" maxlength="20"><br><br>
</form>
</body>
</html>

Beim Ausprobieren jedoch schreibt er IMMER in das Ausgabefeld "null".

Warum? Und wieso? Und wie bekomm ich das weg? Und was muss tatsächlich hin?

Bitte helft mir Ich bin euch für die Mühe dankbar :)
 
Zuletzt bearbeitet:
Hi,

PHP:
var su=0; for(var i=1; i<=x; i=i+1){su=su+i;}
welchen Wert hat denn x?

So wie ich es sehe, ist x null oder NaN - dann wird die Schleife nicht durchlaufen.

Ich nehme an, x soll der übergebene Eingabewert sein. Dann muss es so ausschauen:
PHP:
function summe(x) {

PHP:
onclick="ausgabe.value = summe(eingabe.value)"><br><br>
Hier wäre es möglicherweise besser, zu schreiben:
PHP:
onclick="document.ausgabe.value = summe(document.eingabe.value)"

Gruß
 
Danke für die schnelle Antwort.
Allerdings funktioniert es immer noch nicht.
Jetzt bringt er eine Skriptfehlermeldung:

Fehler: 'document.ausgabe' ist Null oder kein Objekt
Code: 0


Versteh ich nicht.
Kann mir da trotzdem weitergeholfen werden?
Bitte!
Danke!
 
Du kannst auf ein Formularfeld nicht direkt zugreifen....du musst auch dass dazugehörige Formular mit angeben:
Code:
document.summe.ausgabe.value 
bzw.
document.summe.eingabe.value
Optimalerweise solltest du dein Formular aber umbenennen....es heisst genauso wie die Funktion...das könnte u.U. Probleme mit sich bringen.
 
Ups...

ich habe das Formular gar nicht gesehen - sorry! ;)

(Das kommt vom Überfliegen der Beiträge; sollte mir eine Lehre sein)

Gruß
 
Genau das wars.

Ich hab das Formular umbenannt und jetzt funktioniert es.

Und es funktioniert bei mir auch mit der einfachen Angabe von

ausgabe.value = summe(eingabe.value)

ohne document.summe.~ dazu anzugeben.

Ich danke euch! Ihr habt mir echt weitergeholfen.
Bis demnächst!
Jelduin
 

Neue Beiträge

Zurück