Erledigt: Nachkommastellen per javascript löschen

 


smoke
Veteran

27.08.11
14:23 Uhr
Sehr geehrte Gemeinde,

ich habe ein kleines Problem, dass ich gerne mit eurer Hilfe lösen möchte.
Beim Rendern einer Internetseite, wird aus einem CMS eine beliebige Zahl ausgepuckt.
Sie besitzt zwei Nachkommastellen.

Diese lässt sich im Backend nicht ausschalten.

Nun zu meiner Frage:
Gibt es eine Möglichkeit, diese Nachkommastelle per javasrcipt zu löschen?

Also statt

„Sie sparen 30,23%“ soll ein „Sie sparen über 30%“ werden

hat da jemande eine Idee?
Link zu diesem Beitrag in die Zwischenablage kopieren
Mister Ad
Werbung
Schon mal bei Zalando, Amazon oder eBay geguckt? Vielleicht wirst du dort fündig.

 
smoke
Veteran

27.08.11
14:53 Uhr
Jonis, ich danke dir für diese schnelle Antwort )
Toll! love
Link zu diesem Beitrag in die Zwischenablage kopieren
stese
Moderator

27.08.11
15:03 Uhr
es gibt da übrigens verschiedene möglichkeiten ;)

1) parseInt
parseInt holt dir einen vollen integer wert (also eine ganzzahl ohne kommastellen) aus einem string solange dieser mit einer zahl anfängt:

  1. var ganzzahl = parseInt("30,23%");
  2. // ganzzahl = 30
Quelltext in Zwischenablage kopieren

ergibt 30. das ist von vorteil, wenn man mit eingabewerten oder strings aus übersetzungenen etc rumhantiert und man vorher nichts separieren will.

2) Math.ceil() = aufrunden
  1. var ganzzahl = Math.ceil(30.23);
  2. // ganzzahl = 31
Quelltext in Zwischenablage kopieren

man beachte, dass kommastellen in javascript immer ein punkt (.) ist und kein komma. sobald ein komma drin ist, ist es automatisch ein string (behandlung mit parseInt)

3) Math.floor() = abrunden
  1. var ganzzahl = Math.floor(30.78);
  2. // ganzzahl = 30
Quelltext in Zwischenablage kopieren

4) Math.round() = normales runden
  1. var runden = Math.round(30.78);
  2. // runden = 31
  3. var runden = Math.round(30.23);
  4. // runden = 30
Quelltext in Zwischenablage kopieren
Link zu diesem Beitrag in die Zwischenablage kopieren
smoke
Veteran

27.08.11
15:16 Uhr
Vielen Dank Stese, für die Ergänzung.


Ich habe das ganze Mal ausprobiert und bin natürlich auf ein weiteres Problem beim Rendern gestoßen:

  1. <script type="text/javascript">
  2. var Wert = [SavingPercent];
  3. document.write(Wert.toFixed(0));
  4. </script>
Quelltext in Zwischenablage kopieren

Da ich im Backend mit Platzhaltern arbeiten muss, greift das Script nicht.
Gibt es da bei der Schreibweise etwas zu beachten?
Link zu diesem Beitrag in die Zwischenablage kopieren
stese
Moderator

27.08.11
15:18 Uhr
ich vermute das ist genau das problem mit dem string. versuchs mal so:


  1. <script type="text/javascript">
  2. var Wert = parseInt([SavingPercent]);
  3. document.write(Wert);
  4. </script>
Quelltext in Zwischenablage kopieren
Link zu diesem Beitrag in die Zwischenablage kopieren
smoke
Veteran

27.08.11
15:27 Uhr
uh, das verhält sich etwas merkwürdig.
statt 14,30 % wird 34 % ausgespuckt ouw oder manchmal NaN.

Liegt wohl aber am Rendern (
Link zu diesem Beitrag in die Zwischenablage kopieren
smoke
Veteran

27.08.11
15:39 Uhr
Das hat prima geklappt! party

  1. <script type="text/javascript">
  2. var Wert = Math.round([SavingPercent]);
  3. document.write(Wert);
  4. </script>
Quelltext in Zwischenablage kopieren

Ich bedanke mich noch einmal bei allen beteiligten Helfern *
Link zu diesem Beitrag in die Zwischenablage kopieren
 
#