Inhalt zweier Formularfelder addieren
MikeArnold
- javascript
Es ist vielleicht etwas kompliziert, aber ich versuchs mal.
Ich möchte mit Javascript zwei Werte miteinander addieren.
Der erste Wert errechnet sich über die Variable Betrag aus dem Jahrgang der Person (den habe ich im Formularfeld "Jg": var Jahr = document.anmelden.Jg.value;) und wird ins Feld "Startgeld" geschrieben: document.anmelden.Startgeld.value = Betrag;
Den zweiten Wert habe ich im Feld "Nacht": var Nacht = document.anmelden.Nacht.value;
Nun möchte ich die beiden zusammenzählen:
var Summe = document.anmelden.Startgeld.value + document.anmelden.Nacht.value; gibt mir aber zum Beispiel 4232 zurück statt 74 (Summe von 42+32). Diese Summe wird dann noch ins Feld "Summe" geschrieben: document.anmelden.Summe.value = Summe; Offenbar erkennt die variable Summe die Zahlen nicht also solche ?
Was muss ich machen, um dieses Problem zu lösen ?
Gruss Mike
Hier der ganze Code:
function startgeld()
{
var teil1 = document.anmelden.Vorname.value;
var teil2 = document.anmelden.Nachname.value;
var Jahr = document.anmelden.Jg.value;
var Nacht = document.anmelden.Nacht.value;
var gesamt = teil2 + " " + teil1;
var Betrag;
if (Jahr < 1984)
{
Betrag = 42;
}
else
if (Jahr < 1988)
{
Betrag = 30;
}
else
{
Betrag = 20;
}
document.anmelden.Startgeld.value = Betrag;
var Summe = document.anmelden.Startgeld.value + document.anmelden.Nacht.value;
document.anmelden.Benutzername.value = gesamt;
document.anmelden.Summe.value = Summe;
document.anmelden.AdrName.value = gesamt;
}
Hallo,
Eingabefelder enthalten Strings. Der "+"-Operatot verbindet Strings. Du musst einfach die Strings vor der Rechnung in Zahlen umwandeln. Wie das geht, siehst Du hier:
http://selfhtml.teamone.de/javascript/objekte/unabhaengig.htm
unter parseFloat, parseInt oder Number.
Gruß, Jürgen