Zahlen String
Sascha321
- javascript
Hallo
ich weiß da nicht mehr weiter, vielleicht kann ja hier jemand helfen.
Ich habe einen Sollwert mit oberer und unterer Toleranz.
Die Werte trage ich alle separat in ein Textfeld ein.
Nach dem klick auf ein Button soll mir in einem Alertfenster die Werte abzüglich oder zuzüglich der Toleranzen anzeigen.
Das klappt auch soweit ganz gut, nur habe ich ein Problem mit den Komma stellen.
Ich möchte das immer 3 Stellen nach dem Komma angezeigt werden das klappt wie hier in dem Beispiel seht leider nicht immer.
Das Math.round streicht einfach die Nullen am Schluss weg.
Nun weiß ich nicht wie ich das abfangen kann. Mit substring geht es nicht weil dann wäre es von vorteil wenn man den String von hinten ab arbeiten könnte und das geht irgendwie nicht.
<html>
<head>
</head>
<script type="text/javascript">
<!--
function rechne()
{
//alert (document.test.SollB.value +' '+ document.test.obTolB.value +' '+ document.test.unTolB.value);
var SollB1 = parseFloat (document.test.SollB.value);
var obTolB1 = parseFloat (document.test.obTolB.value);
var unTolB1 = parseFloat (document.test.unTolB.value);
ObWert1 = (SollB1 + obTolB1);
UnWert1 = (SollB1 + unTolB1);
alert (ObWert1 + ' gerundet ' + Math.round(ObWert1* 10000) / 10000);
alert (UnWert1 + ' gerundet ' + Math.round(UnWert1* 10000) / 10000);
}
//-->
</script>
<body>
<form name="test" action="">
<table>
<tr>
<td>Sollwert</td>
<td>obere Toleranz</td>
<td>untere Toleranz</td>
</tr>
<tr>
<td><input type="TEXT" name="SollB" value="34.8"></td>
<td><input type="TEXT" name="obTolB" value="+0.2"></td>
<td><input type="TEXT" name="unTolB" value="-0.2"></td>
</tr>
<tr>
<td><input type="SUBMIT" value="Berechnen" onClick="rechne()"></td>
</tr>
</table>
</form>
</body>
</html>
Hallo Sascha321.
Das Math.round streicht einfach die Nullen am Schluss weg.
Nun weiß ich nicht wie ich das abfangen kann.
Indem du die Nullen http://de.selfhtml.org/javascript/objekte/number.htm#to_fixed@title=erzwingst.
Einen schönen Sonntag noch.
Gruß, Mathias
Hallo Mathias,
Danke, klappt super.
Gruss Sascha
Hi,
Danke, klappt super.
Beachte aber, daß die Browser der 4. Generation (oder generell Clients mit JS<V1.5) das nicht können.
Gruß, Cybaer
Hallo
Noch mal eine frage zu einem anderem Problem, bei dem folgendem Script bleibt der Wert nicht im Text feld stehen kann mir jemand sagen wieso??
<html>
<head>
</head>
<script type="text/javascript">
<!--
function zeigen()
{
document.Form1.feld1.value="Hallo Du Da";
//alert('hallo welt');
}
//-->
</script>
<body>
<form name="Form1" action="">
<table>
<tr>
<td>
<input type="text" name="feld1" value="">
</td>
<td></td>
</tr>
<tr>
<td><input type="SUBMIT" name="button1" value="Los" onClick="zeigen()"></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
</tr>
</table>
</form>
</body>
</html>
Hallo Sascha321.
Noch mal eine frage zu einem anderem Problem, bei dem folgendem Script bleibt der Wert nicht im Text feld stehen kann mir jemand sagen wieso??
Das liegt daran, dass erst der Wert ins Eingabefeld geschrieben und augenblick danach das Formular abgeschickt wird. Verwendest du einen Browser, kannst du hiernach zurück gehen und dein „Hallo Du Da“ im Eingabefeld lesen.
Du hast nun zwei Möglichkeiten:
Soll der Button „Los“ wirklich nur ein http://de.selfhtml.org/html/formulare/klickbuttons.htm#herkoemmlich@title=Klickbutton sein, ohne das Formular abzuschicken, dann definiere auch einen solchen, indem du den Wert des type-Attributes auf „button“ änderst.
Verhindere per JavaScript die weitere Abarbeitung des Formularbuttons. Hierzu nutzt du den Rückgabewert „false“. Exemplarisch könnte dies also wie folgt aussehen:
function zeigen() {
document.Form1.feld1.value = 'Hallo du da!';
return false; // Wir geben „false“ zurück
}
Dazu das HTML:
<!-- Hier geben wir den Rückgabewert der Funktion zeigen() zurück, also false -->
<input type="submit" name="button1" value="Los" onclick="return zeigen();">
Einen schönen Sonntag noch.
Gruß, Mathias
Hallo Danke
habe das mit dem Button nachher auch gemerkt. manchmal sieht man den Wald vor lauter baumen nicht.
Trotzdem Danke