Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript]Zaokrąglenie do 2 miejsca po przecinku
kondziu9516
post
Post #1





Grupa: Zarejestrowani
Postów: 142
Pomógł: 1
Dołączył: 9.08.2011
Skąd: Bielsko Biała

Ostrzeżenie: (20%)
X----


Witam mam problem z zaokrągleniem liczby do 2 miejsc po przecinku.
Sumowanie jest w JS.

  1. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  2. <title>Kalkulator</title>
  3. </head>
  4. <script src="kalkulator.js"></script>
  5. function Suma(){
  6.  
  7. var suma=0;
  8. $('input:checkbox[@name^=id]',document.forms[0]).each(function(){
  9. if(this.checked)suma+=+$(this).attr('value');
  10. });
  11. $('#xyz').empty().append(suma);
  12. }
  13. <input type="checkbox" name="id1" value="12.89" />Produkt 1<br>
  14. <font size="2">Cena: 12.89 PLN:</font><br><br>
  15. <input type="checkbox" name="id2" value="15.90" />Produkt 2<br>
  16. <font size="2">Cena: 15.90 PLN:</font><br><br>
  17. <input type="checkbox" name="id3" value="120.78" />Produkt 3<br>
  18. <font size="2">Cena: 120.78 PLN:</font><br><br>
  19. <input type="checkbox" name="id3" value="20.78" />Produkt 4<br>
  20. <font size="2">Cena: 20.78 PLN:</font><br><br>
  21. <input type="button" onclick="Suma()" value="Podlicz" />
  22. </form>
  23. <b>SUMA:</b> <span id="xyz">0</span> PLN
  24. </body>
  25. </html>


Sumując Produkt 1 i Produkt 3
Wyskakuje suma: 133.67000000000002

Jak zaokrąglić to do dwóch miejsc?
Proszę o pomoc
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Kostek.88
post
Post #2





Grupa: Zarejestrowani
Postów: 376
Pomógł: 47
Dołączył: 23.08.2007
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


EDIT: a gdzie masz jQuery w tym przykładzie?! Podałem Ci link do biblioteki do wstawienia... przeczytałeś tego posta chociaż? Widzę, kalkulator wstawiasz, a jQuery nie... nie rozumiem... chyba nie czytałeś...

Tutaj masz wersję natywnego JavaScript. Jeśli nie masz zamiaru używać jQuery, to zrób to natywnie... jeśli masz mało JS na stronie, nie ma sensu byś umieszczał ciężką bibliotekę jQuery...

  1. function sumuj() {
  2. var suma = 0;
  3. var c = document.getElementById('formularz').getElementsByTagName('input');
  4. for (var i = 0; i < c.length; i++) {
  5. if (c[i].type == 'checkbox') {
  6. if ( c[i].checked == true ) {
  7. suma += parseFloat( c[i].value );
  8. }
  9. }
  10. }
  11.  
  12. document.getElementById("xyz").innerHTML = parseFloat(suma).toFixed(2);
  13. }


Ten post edytował Kostek.88 25.02.2012, 21:59:40
Go to the top of the page
+Quote Post

Posty w temacie
- kondziu9516   [JavaScript]Zaokrąglenie do 2 miejsca po przecinku   25.02.2012, 20:18:09
- - Barcelona   Trzymej http://www.yarpo.pl/2011/03/06/js-zaokrag...   25.02.2012, 20:20:33
- - kondziu9516   Widziałem to już... Ale nie wiem jak to odwołać si...   25.02.2012, 20:24:14
- - by_ikar   A tam kombinacje alpejskie jakieś.. toFixed i wszy...   25.02.2012, 20:25:20
- - kondziu9516   wiem dzięki wielkie.... znalazłem to wcześniej. Al...   25.02.2012, 20:26:58
- - Kostek.88   [HTML] pobierz, plaintext  var liczba = 3,456...   25.02.2012, 20:39:28
- - kondziu9516   niestety nie działa...;( A czy przerobiłby mi kto...   25.02.2012, 20:43:47
- - Kostek.88   Jak już robisz to w jQuery, to po co mieszać z nat...   25.02.2012, 21:12:11
- - kondziu9516   albo coś źle wstawiam... albo nie działa...;(   25.02.2012, 21:18:51
- - Kostek.88   Ha ha ha! Działa Sam widzisz pod linkiem. A t...   25.02.2012, 21:27:12
- - kondziu9516   No mam wszystko... Tak to mam... i nie działa nawe...   25.02.2012, 21:35:30
- - Kostek.88   EDIT: a gdzie masz jQuery w tym przykładzie?! ...   25.02.2012, 21:56:40
- - kondziu9516   Okej już działa... Zrobiłem to jeszcze inaczej... ...   25.02.2012, 22:39:17
- - -Mario-   A to jest forum php czy JS   26.02.2012, 01:06:11
- - Kostek.88   @kondziu9516: Możesz dać ew. [HTML] pobierz, plai...   26.02.2012, 23:53:23
- - kosiew   Witam. Czy ktoś przerobił by ten kodzik tak aby w...   10.05.2012, 17:33:03
- - Kostek.88   [JAVASCRIPT] pobierz, plaintext document.getElemen...   16.05.2012, 22:29:51


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 9.10.2025 - 02:11