![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 14.09.2016 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Mam podstawę kodu: CODE <form name="cena"> Produkt <select name="cena" id="cena"> <option value="0">--- wybierz ---</option> <option value="670">Produkt 1 - 670 piniendzuf (zł)</option> <option value="770">Produkt 2 - 770 piniendzuf (zł)</option> <option value="270">Produkt 3 - 270 piniendzuf (zł)</option> <option value="370">Produkt 4 - 370 piniendzuf (zł)</option> </select><br><br> </form> <form action="..." name="vat" id="vat"> VAT <input type="radio" name="jeden" value="23" />23% <input type="radio" name="dwa" value="22" />22% <input type="radio" name="trzy" value="7" />7% <input type="radio" name="cztery" value="3" />3% </form><br> Wartość netto <output id="wynik"></output><br><br> <input type="button" onClick="oblicz()" value="wynik" id="wynik"> </form> Potrzebuję funkcji, gdzie oblicza mi dany procent VAT'u wybrany przez "radio", do danej ceny z listy rozwijalnej. Próbowałem zrobić taką funkcję: CODE function oblicz() { var cena = document.forms['cena'].elements['cena'].value; var vat = document.forms['vat'].elements['vat'].checked = true/false; var wynik = (cena * vat)/100; document.getElementById("wynik").value = wynik; } Ale najwidoczniej nic z tego (IMG:style_emoticons/default/biggrin.gif) Wynik ma być wyświetlany w outpucie. Potrzebuyję pomocyy.. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 544 Pomógł: 5 Dołączył: 18.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
We wszystkich input[type="radio"] musisz zmienić name="tax". Bo miałeś inne nazwy porobione i nie było wyboru pojedynczego. Poniżej skrypt JS. Swoją drogą dziś też robiłem coś podobnego (IMG:style_emoticons/default/wink.gif)
Kod function oblicz() {
var cena = document.forms['cena'].elements['cena'].value; var vat = document.forms['vat'].elements['tax'].value; cena=parseFloat(cena); // Zmiana stringa na Float vat=parseFloat(vat); // Zmiana stringa na Float var wynik = (cena / (vat+100))*100; // Dodanie 100 do liczy VAT (np. 100+23 = 123 dla VAT 23%) document.getElementById("wynik").value = wynik.toFixed(2); // Zaokrąglanie do 2 miejsc po przecinku } |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 6 806 Pomógł: 1828 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
deha21, Twój przykład oblicza wartość netto zakładając, że cena jest brutto.
Ale przyznam, że nie wiem czy to jest to co chciałeś uzyskać, ani czy to jest to czego oczekiwał autor. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 544 Pomógł: 5 Dołączył: 18.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
deha21, Twój przykład oblicza wartość netto zakładając, że cena jest brutto. Ale przyznam, że nie wiem czy to jest to co chciałeś uzyskać, ani czy to jest to czego oczekiwał autor. Wydawało mi się, że chodziło o obliczenie netto z brutto (IMG:style_emoticons/default/tongue.gif) Ewentualnie można obliczyć wartość VAT w ten sposób. Kod var wynik = ((cena / (vat+100))*100)-cena;
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
Nie, nie można
Ceny netto i ceny brutto oblicz a się tak: 123 / 1.23 = cena netto 100 * 1.23 = cena brutto |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 544 Pomógł: 5 Dołączył: 18.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
skoro vat masz zapisane jako 23, 18, 5 a cena to cena brutto to powinno być:
vat = cena-(cena/(1+(vat/100))) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 06:41 |