Wpis z mikrobloga

Mireczki z #javascript #webdev #programowanie
Muszę napisać kod, który podlicza koszt na podstawie formularza. Naklepałem coś takiego:

function Refund()
{
var ref = 0.0
var distance = document.forms["AddDriveForm"]["Distance"].value
if (distance=1) {ref = ref + 93;}
if (distance=2) {ref = ref + 154;}
if (distance=3) {ref = ref + 180.9;}
if (distance=4) {ref = ref + 207;}
if (distance=5) {ref = ref + 235;}

if (document.getElementById("OGate").checked == true) {ref = ref + 27.9;}
if (document.getElementById("BGate").checked == true) {ref = ref + 13.95;}
if (document.getElementById("MGate").checked == true) {ref = ref + 11.5;}

var label = document.getElementById('RefundLabel');
label.innerHTML = "Total: " + ref.toString() +"kr."
}

Kod ma odczytać, co zaznaczyliśmy w i które checkboxy zostały zaznaczon, dokonać obliczeń i wypisać wynik w elemencie o ID RefundLabel, ale nie działa ( ͡° ʖ̯ ͡°)

Zaznaczam, że nie znam JS i to mój pierwszy kod. Szukałem w google ale wyniki to jakiś rak. Ktoś doradzi co robię źle?
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Ok, sorry Mireczki, chyba już sobie poradziłem. Po 7 godzinach kodzenia, mózg chyba mi się wyłącza. Brakowało średników i w if'ach dałem przypisanie zamiast porównania...
  • Odpowiedz
@PanBeton: Primo, odseparuj logikę biznesową od obsługi GUI. A wtedy, rozważ secundo, możesz to łatwo obtestować bez ciągłego klikania wpisywania tego samego (nawet jednostkowo, choć uruchomienie tego JS to ciut więcej niż 2-3 kliknięcia).
  • Odpowiedz
@phreaker: akurat ten kod to kaszan, ale w JS nie trzeba stawiać średniów. Jest to jednak dobra praktyka, bo czasami coś może zostać źle zintepretowane :)
  • Odpowiedz
  • 0
@Uszatyy napisałem, że nie znam js. Nie chciało mi się szukać nawet jak używać switcha. Ten kod to nic ważnego, dlatego jest jaki jest. Zresztą jestem początkujący
  • Odpowiedz