Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript]sumowanie wartości inputów w kolumnie
Forum PHP.pl > Forum > Przedszkole
Randallmaster
Jak zliczyć środek inputa o nazwach cena[1],cena[2], wiersze tworzą się w czasie rzeczywistym

nie mogę również zrobić aby cena[] była dynamiczna

Link do kodu:
http://jsfiddle.net/D8sP2/16/
mortus
[JAVASCRIPT] pobierz, plaintext
  1. $('#przelicz').click(function(){
  2. var sum = 0;
  3. $('input[name*="cena"]').each(function(){
  4. var v = $(this).val();
  5. var amount = v == '' ? 0 : parseInt(v);
  6. sum += amount;
  7. });
  8. alert(sum);
  9. });
[JAVASCRIPT] pobierz, plaintext

Oczywiście zamiast parseInt() powinieneś użyć tego, czego będziesz potrzebował.
wukkie
A to poprawka do twojego kodu:
1. Alert zwraca wartość.
2. Number zmienia string na int.
  1. $('#przelicz').click(function(){
  2. var tablica = $('#tabela input');
  3. console.log(tablica)
  4. x=tablica.length;
  5. suma=0;
  6. for(i=0;i<x;i++) suma+=Number($(tablica[i]).val());
  7. $('#suma').val(suma);
  8. alert($('#suma').val());
  9. });
  10. });
Randallmaster
Super działa smile.gif

ale nie chciałbym zostawić tego kodu obojętnie i po prostu go wkleić. Dlatego mógłbyś mi odpowiedzieć na parę pytań?

Inputa podałeś w formie input[name*="cena"] po co ta gwiazdka? oraz w jaki sposób to pobiera dane jeśli ja mam name="cena[1]", name="cena[2]", itd.

Wytłumaczysz mi składnie tego wierszu:

co taje znak zapytania, dwukropek??

var amount = v == '' ? 0 : parseInt(v);

oraz gdzie mogę znaleść dokumentację po polsku??









Wukkie co daje ten kod console.log(), w jaki sposób odnosi się do kodu??
wukkie
Cytat(Randallmaster @ 31.12.2012, 13:44:38 ) *
Wukkie co daje ten kod console.log(), w jaki sposób odnosi się do kodu??


Zainstaluj sobie dodatek do firefoxa Firebug, dzięki temu będziesz mógł używac między innymi tej funkcji do sprawdzenia zawartości danej zmiennej. Pod debuggowaniu te wpisy sa do usunięcia.
mortus
Cytat(Randallmaster @ 31.12.2012, 13:44:38 ) *
Super działa smile.gif

ale nie chciałbym zostawić tego kodu obojętnie i po prostu go wkleić. Dlatego mógłbyś mi odpowiedzieć na parę pytań?

Inputa podałeś w formie input[name*="cena"] po co ta gwiazdka? oraz w jaki sposób to pobiera dane jeśli ja mam name="cena[1]", name="cena[2]", itd.

Wytłumaczysz mi składnie tego wierszu:

co taje znak zapytania, dwukropek??

var amount = v == '' ? 0 : parseInt(v);

oraz gdzie mogę znaleść dokumentację po polsku??

Wukkie co daje ten kod console.log(), w jaki sposób odnosi się do kodu??

[JAVASCRIPT] pobierz, plaintext
  1. $('input[name*="cena"]') // wyszukuje pola input, których nazwa (name) zawiera w sobie słowo "cena", zwraca tablicę obiektów input
  2. var amount = v == '' ? 0 : parseInt(v); // to skrócony zapis instrukcji warunkowej i od razu przypisania, jak niżej
  3. var amount = 0;
  4. if(v == '') {
  5. amount = 0;
  6. } else {
  7. amount = parseInt(v);
  8. }
[JAVASCRIPT] pobierz, plaintext

jQuery nie ma dokumentacji po polsku, więc znalezienie polskich źródeł wiąże się z przeszukiwaniem sieci pod kątem konkretnego zagadnienia (ale szczerze powiedziawszy bez znajomości angielskiego ani rusz).
Randallmaster
dziękuje za pomoc smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.