@@Rolf B
var ergebnis = a + b; rechner.ergebnis.value = ergebnis;
Das wird wohl nichts. Das Feld hat zwar id="ergebnis", aber name="Ergebnis"; müsste also mit großem E angesprochen werden.
Besser wäre allerdings, im HTML name="ergebnis" zu schreiben und damit einerseits id und name gleich zu haben und anderseits konsistent Kleinschreibung zu verwenden (es ist ja auch <form name="rechner">).
Ich halte es aber für keine so gute Idee, für Feldnamen und JavaScript-Berechnungsvariable denselben Bezeichner zu verwenden.
Was Du willst, ist entweder das
output-Element,
An die Stelle gehört ein Punkt, kein Komma. Ohne „entweder“ …
oder ein
<input type="text" readonly ...>
… und „oder“. Für die Ausgabe ist input falsch.
Statt <input type=readonly id="ergebnis" name=Ergebnis size=30 > sollte da stehen: <output id="ergebnis" name="ergebnis"></output> (habe hier ein kleines e verwendet).
Die ID macht sich gut, um das label zuzuordnen, über das auch ein Ausgabefeld verfügen sollte:
<label for="ergebnis">Ergebnis</label>
<output id="ergebnis" name="ergebnis"></output>
Wenn man keine visuelle Beschriftung möchte, kann man sie visuell verstecken.
Das Ausgabefeld kann ebenfalls über document.forms.rechner.ergebnis angesprochen und über document.forms.rechner.ergebnis.value gefüllt werden. Guckst du.
LLAP 🖖
„Wer durch Wissen und Erfahrung der Klügere ist, der sollte nicht nachgeben. Und nicht aufgeben.“ —Kurt Weidemann