[jQuery, JS] Aktualizowanie sumy po wysłaniu formularza poprzez ajax |
[jQuery, JS] Aktualizowanie sumy po wysłaniu formularza poprzez ajax |
16.04.2020, 00:27:07
Post
#1
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 5.06.2019 Ostrzeżenie: (0%) |
Cześć! Powiedzmy, że mam formularz z polem tekstowym barcode. Użytkownik wpisuje tam kod, który poprzez ajax jest wysyłany do api, a z niego otrzymuje się cenę, która powinna się wyświetlić w okienku typu alert, ale oprócz tego na stronie index.html jest wyświetlany div o nazwie suma z domyślną wartością 0.00. Jeśli użytkownik wyśle formularz to ta kwota powinna wzrosnąć o wartość odebraną z api.
Poradziłem sobie z wysłaniem zapytania do api i wyświetlam w alercie cenę, ale nie umiem zaktualizować łącznej sumy w divie.
Przykład: Suma: 0.00 Cena: 2.39 Suma: 2.39 (0.00+2.39) Cena: 4.49 Suma: 6.88 (2.39+4.49) -- Czy jest ktoś w stanie pomóc mi napisać taką funkcję, która będzie aktualizowała cenę po każdym wysłanym formularzu? --- Robiąc to w ten sposób:
Otrzymuję: NaN |
|
|
16.04.2020, 09:18:59
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 782 Pomógł: 1826 Dołączył: 11.03.2014 Ostrzeżenie: (0%) |
Te plusy przed zmiennymi są niepotrzebne.
Sprawdź co jest w data.price, czy nie jest to czasem liczba z przecinkiem albo z postfixem "zł". -------------------- |
|
|
16.04.2020, 12:58:34
Post
#3
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 5.06.2019 Ostrzeżenie: (0%) |
Te plusy przed zmiennymi są niepotrzebne. Sprawdź co jest w data.price, czy nie jest to czasem liczba z przecinkiem albo z postfixem "zł". data.price zwraca decimal(9,2), czyli np 1.00, 2.00, 4.59, 2.35 Jak robię:
To na stronie po każdym wysłanym formularzu wygląda to tak: 0.001.492.394.5949.99 Czyli zamiast kwoty się sumować to one się dodają na końcu Ten post edytował oskarszlempo 16.04.2020, 13:00:29 |
|
|
16.04.2020, 13:16:52
Post
#4
|
|
Grupa: Zarejestrowani Postów: 6 373 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) |
Kwoty przepuść przez parseFloat. https://developer.mozilla.org/pl/docs/Web/J...ekty/parseFloat
-------------------- |
|
|
16.04.2020, 13:17:11
Post
#5
|
|
Grupa: Zarejestrowani Postów: 6 782 Pomógł: 1826 Dołączył: 11.03.2014 Ostrzeżenie: (0%) |
parseFloat(first) + parseFloat(second);
-------------------- |
|
|
16.04.2020, 13:58:19
Post
#6
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 5.06.2019 Ostrzeżenie: (0%) |
|
|
|
16.04.2020, 14:03:26
Post
#7
|
|
Grupa: Moderatorzy Postów: 36 519 Pomógł: 6308 Dołączył: 27.12.2004 |
console.log(parseFloat(first) + parseFloat(second));
console.log('Total: ' + (parseFloat(first) + parseFloat(second))); -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
16.04.2020, 14:18:11
Post
#8
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 5.06.2019 Ostrzeżenie: (0%) |
console.log(parseFloat(first) + parseFloat(second)); console.log('Total: ' + (parseFloat(first) + parseFloat(second))); NaN Total: NaN -- Może da się to jakoś inaczej zrobić, aby nie pobierać wartości z diva tylko z jakiejś zmiennej która się będzie aktualizowała po każdym wysłanym formularzu? Ten post edytował oskarszlempo 16.04.2020, 14:19:30 |
|
|
16.04.2020, 14:21:50
Post
#9
|
|
Grupa: Moderatorzy Postów: 36 519 Pomógł: 6308 Dołączył: 27.12.2004 |
Cytat aby nie pobierać wartości z diva tylko z jakiejś zmiennej która się będzie aktualizowała po każdym wysłanym formularzu? No to wczym problem. Zrob dokladnie to co wlasnie napisales. Trzymaj to jeszcze w zmiennej globalnej i juz. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
17.04.2020, 22:27:15
Post
#10
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 5.06.2019 Ostrzeżenie: (0%) |
No to wczym problem. Zrob dokladnie to co wlasnie napisales. Trzymaj to jeszcze w zmiennej globalnej i juz.
Pokazuje mi NaN.. :/ Ten post edytował oskarszlempo 17.04.2020, 23:06:36 |
|
|
18.04.2020, 15:33:24
Post
#11
|
|
Grupa: Moderatorzy Postów: 36 519 Pomógł: 6308 Dołączył: 27.12.2004 |
alert(data.price);
alert(parseFloat(data.price)); -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
18.04.2020, 15:48:53
Post
#12
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 5.06.2019 Ostrzeżenie: (0%) |
|
|
|
20.04.2020, 09:44:47
Post
#13
|
|
Grupa: Moderatorzy Postów: 36 519 Pomógł: 6308 Dołączył: 27.12.2004 |
Ale czemy widze wynik tylko jednego alert?
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
Wersja Lo-Fi | Aktualny czas: 24.09.2024 - 15:09 |