Forum Doku Wiki Blog

Forumsarchiv 2005, Oktober
Rechnen mit JavaScript

archivierte Beiträge lesen

  1. (JAVASCRIPT) Rechnen mit JavaScript von Guck, 27. 10. 2005, 19:14

Rechnen mit JavaScript

Der folgende Beitrag wurde am 27. 10. 2005, 19:14 Uhr von Guck veröffentlicht.

Moin,

ich habe eine Seite mit HTML und JavaScript geschrieben.
Es soll eine einfache Summe gebildet werden und das Ergebnis
ausgegeben. Jedoch gibt er mir die Zahlen in der Reihenfolge
wieder aus in der ich sie eingegeben habe.

Das Ganze in gekürzter Version:


<html>
<head>
<title>Programm</title>

<script type="text/javascript">
function Rechnen (Zahl1, Zahl2, Zahl3, Zahl4, Zahl5, Zahl6, Zahl7, Zahl8, Zahl9)
{
 var Summe = (Zahl1 + Zahl2 + Zahl3 + Zahl4 + Zahl5 + Zahl6 + Zahl7 + Zahl8 + Zahl9);
 return Summe;
}

function SchreibeErgebnis (Wert1, Wert2, Wert3, Wert4, Wert5, Wert6, Wert7, Wert8, Wert9)
{
  var Wert = Rechnen(Wert1, Wert2, Wert3, Wert4, Wert5, Wert6, Wert7, Wert8, Wert9);
  document.Eingaben.BErgebnis.value = Wert;
}
</script>
</head>

<body>
<form name="Eingaben" action="">
<table bgcolor="#FFFFFF" cellspacing="0" cellpadding="0" width="700" align="center">
<tr><td colspan="6" width="180"><b>&nbsp; Hersteller</b></td> <td width="170"><b>Name</b></td>     <td><b>Liter</b></td>                                                                          <td><b>Flaschen</b></td>                                                               <td><b>Preis in &euro;</b></td>                                                         <td><b>Bestellung </b></td></tr>

<tr><td colspan="6" width="180">&nbsp; Reudnitzer Brauhaus     </td><td width="180">Sternburg Export       </td><td><input type="text" size="4" maxlength="3" align="right" name="L1" value="0.5"></td><td><input type="text" size="4" maxlength="2" align="right" name="KA1" value="20"></td><td><input type="text" size="4" maxlength="5" align="right" name="P1" value="6.20"> </td><td><input type="text" size="4" maxlength="2" align="right" name="B1"></td></tr>
<tr><td colspan="6" width="180">                               </td><td width="180">Reudnitzer Schwarzbier </td><td><input type="text" size="4" maxlength="3" align="right" name="L2" value="0.5"></td><td><input type="text" size="4" maxlength="2" align="right" name="KA2" value="20"></td><td><input type="text" size="4" maxlength="5" align="right" name="P2" value="9.30"> </td><td><input type="text" size="4" maxlength="2" align="right" name="B2"></td></tr>
.
.
.
<tr><td colspan="6" width="180">&nbsp;<input type="button" size="8" value="Rechne" onClick="SchreibeErgebnis(document.Eingaben.B1.value,document.Eingaben.B2.value,document.Eingaben.B3.value,document.Eingaben.B4.value,document.Eingaben.B5.value,document.Eingaben.B6.value,document.Eingaben.B7.value,document.Eingaben.B8.value,document.Eingaben.B9.value)">                               </td><td width="180">                       </td><td><input type="text" size="4" align="right" name="LErgebnis"></td> <td><input type="text" size="4" align="right" name="KAErgebnis"></td> <td><input type="text" size="4" align="right" name="PErgebnis"></td> <td><input type="text" size="4" align="right" name="BErgebnis"></td></tr>

</table>
</form>
</body>
</html>

Rechnen mit JavaScript

Der folgende Beitrag wurde am 27. 10. 2005, 19:21 Uhr von Gunnar Bittersmann veröffentlicht.

Guck,

> Jedoch gibt er mir die Zahlen in der Reihenfolge
> wieder aus in der ich sie eingegeben habe.

Ja, so wirkt sich der "+"-Operator auf Strings aus. Die Werte von Eingabefeldern sind Strings. Wenn du die als numerische Werte brauchst, musst du sie in solche umwandeln.

Live long and prosper,
Gunnar
--
„Weisheit ist nicht das Ergebnis der Schulbildung, sondern des lebenslangen Versuchs, sie zu erwerben.“ (Albert Einstein)

Rechnen mit JavaScript

Der folgende Beitrag wurde am 27. 10. 2005, 19:41 Uhr von Guck veröffentlicht.

Dank euch !!!!

die sache hat wunderbar mit Number() funktioniert!


DANKE !!!

Rechnen mit JavaScript

Der folgende Beitrag wurde am 27. 10. 2005, 19:25 Uhr von Stefano Albrecht veröffentlicht.

Hallo Guck! ;~)

Wenn Du mit Inhalten aus Text-Inputfeldern arbeitest, werden diese intern immer als Strings behandelt. In diesem Fall erreichst Du mit dem + Operator ein Zusammenfügen der Values. Wenn Du die Werte expliziet als Integer verwenden möchtest, wandle sie mit der objektlosen Funktion Number(); in solche um.

Also:

var Summe = (Number(Zahl1)+ Number(Zahl2) + ...

Achte darauf, dass Buchstaben dadurch in den entsprechenden ISO-Latin Code umgewandelt werden.


Mit freundlichen Grüßen
Stefano Albrecht

Rechnen mit JavaScript

Der folgende Beitrag wurde am 27. 10. 2005, 19:35 Uhr von Gunnar Bittersmann veröffentlicht.

Stefano,

> var Summe = (Number(Zahl1)+ Number(Zahl2) + ...
>
> Achte darauf, dass Buchstaben dadurch in den entsprechenden ISO-Latin Code umgewandelt werden.

(1) Nö, im Firefox nicht, der gibt "NaN" zurück.

(2) Das passiert nicht bei Verwendung von parseFloat() bzw. parseInt().

Live long and prosper,
Gunnar
--
„Weisheit ist nicht das Ergebnis der Schulbildung, sondern des lebenslangen Versuchs, sie zu erwerben.“ (Albert Einstein)

© 1998-2013 SELFHTMLImpressumSoftware: Classic Forum 3.4