mam problem z napisaniem skryptu JS, który odpowiadałby za zliczanie wartości zaznaczonych pól typu checkbox w czasie rzeczywistym.
Mianowicie tak wygląda mój kod HTML:
<label class="chbox"> <input type="checkbox" name="" value="" onClick="sumAddresses('12')" />Firmy budowlane </label> <label class="chbox"> <input type="checkbox" name="" value="" onClick="sumAddresses('6')" />Firmy budowlane #2 </label> <label class="chbox"> <input type="checkbox" name="" value="" onClick="sumAddresses('57')" />Firmy budowlane #3 </label> <label class="chbox"> <input type="checkbox" name="" value="" onClick="sumAddresses('512')" />Firmy transportowe </label> <label class="chbox"> <input type="checkbox" name="" value="" onClick="sumAddresses('694')" />Produkcja i przemysł </label> <label class="chbox"> <input type="checkbox" name="" value="" onClick="sumAddresses('5')" />Motoryzacja </label> <label class="chbox"> <input type="checkbox" name="" value="" onClick="sumAddresses('0')" />Handel </label> <label class="chbox"> <input type="checkbox" name="" value="" onClick="sumAddresses('94')" />Restauracje i pizzerie </label>
Chciałbym by po zaznaczeniu pola, którego wartość zdefiniowałem w funkcji onClick="sumAddresses('94')" jego wartość została doliczona do wartości innych zaznaczonych checkbox'ów, a gdy odznaczymy pole to jego wartość zostanie odliczona od sumy wartości innych zaznaczonych pól.
Wynik chciałbym wyświetlać w czasie rzeczywistym w div'ie, którego ID zdefiniowałem jako sumAmount, czyli:
document.getElementById("sumAmount").innerHTML(suma);
Jeżeli jest ktoś w stanie mi pomóc przy tym skrypcie, będę bardzo wdzięczny.
Sam, póki co napisałem coś takiego, lecz nie działa to tak jakbym tego oczekiwał.
function sumAddresses(amount) { var sum = 0; if($(this).is(':checked')) { sum = sum - parseFloat(amount); } if($(this).is(':checked') === false) { sum = sum + parseFloat(amount); } alert(sum); };
Serdecznie pozdrawiam,
Kamil Dunaj