Kleines Problem mir JavaScript (Anfänger)
Mastershrimp
- javascript
0 Struppi
Hi!
Ich bin momentan dabei, JavaScript mithilfe dieser Webseite zu lernen und stoße gerade auf ein kleines Problem:
<script language="JavaScript" type="text/javascript">
<!--
function Rechnung(Eingabe1,Eingabe2) {
var Ergebnis = eval(Eingabe1 + Eingabe2);
alert("Ergebnis: " + Ergebnis);
}
//-->
</script>
<form name="Eingabe">
<input type="number" name="Eingabe1">
<br><input type="number" name="Eingabe2">
<br><input type="button" value="Ok" onClick="Rechnung(document.Eingabe.Eingabe1.value,document.Eingabe.Eingabe2.value)">
</form>
So sieht der Problem-Quelltext aus. Ich möchte, dass man zwei Zahlen in das Formular eingeben kann, und dass diese automatisch nach klick auf "ok" addiert werden. Das ganze klappt auch mit "eval(Eingabe1 * Eingabe2)", nur halt mit multiplizieren.
Wenn ich, wie oben, ein "+" schreibe, kommt als Meldung die Auflistung der beiden Zahlen.
Könnte mir vielleicht jmd sagen, was ich falsch mache?
Danke
Hi!
Ich bin momentan dabei, JavaScript mithilfe dieser Webseite zu lernen und stoße gerade auf ein kleines Problem:<script language="JavaScript" type="text/javascript">
<!--
function Rechnung(Eingabe1,Eingabe2) {
var Ergebnis = eval(Eingabe1 + Eingabe2);alert("Ergebnis: " + Ergebnis);
}
//-->
</script><form name="Eingabe">
<input type="number" name="Eingabe1">
<br><input type="number" name="Eingabe2">
<br><input type="button" value="Ok" onClick="Rechnung+(document.Eingabe.Eingabe1.value,document.Eingabe.Eingabe2.value)"></form>
So sieht der Problem-Quelltext aus. Ich möchte, dass man zwei Zahlen in das Formular eingeben kann, und dass diese automatisch nach klick auf "ok" addiert werden. Das ganze klappt auch mit "eval(Eingabe1 * Eingabe2)", nur halt mit multiplizieren.
Wenn ich, wie oben, ein "+" schreibe, kommt als Meldung die Auflistung der beiden Zahlen.
Könnte mir vielleicht jmd sagen, was ich falsch mache?
nichts, aber der + operator wirkt auch auf Zeichenketten und der Inhalt von formularfeldern sind Zeichenketten.
Lösung:
var Ergebnis = parseFloat(Eingabe1) + parseFloat(Eingabe2);
eval ist nicht nötig hier.
Struppi.