Mam pewien problem co do dokonania pewnych obliczeń w locie. Sytuacja przedstawia sie następująco: mamy sumę powiedzmy 5000 którą trzeba rozdzielić między kilka pól, właściwie liczba pól może być różna. Wymyśliłem sobie to tak:
pole1 - przechowuje informacje ile pieniędzy mamy do rozdzielenia np. nasze 5000
pole2 - przechowuje ile pieniędzy już rozdzielono
pole3 - przechowuje sumę z pola na które kliknęliśmy
Kod przedstawia się następująco:
<script type="text/javascript"> function rozdzial(suma, rozdzielono, doRozdzialu) { if(suma.value == '') amount = 0; else amount = parseFloat(suma.value); razem = amount + parseFloat(document.getElementById(rozdzielono).value); if(razem <= doRozdzialu) { return true; } else { suma.value = parseFloat(document.getElementById('tmp').value); alert('Przekroczono sumę do rozdzielenia.'); } } function move(value, id) { document.getElementById(id).value = value; } function roznica(poZmianie, przedZmiana, dodajDo) { if(poZmianie.value == '') poZ = 0; else poZ = parseFloat(poZmianie.value); if(document.getElementById(przedZmiana).value == '') przedZ = 0; else przedZ = parseFloat(document.getElementById(przedZmiana).value); wynik = poZ - przedZ; document.getElementById(dodajDo).value = parseFloat(document.getElementById(dodajDo).value) + parseFloat(wynik); return true; } </script> do rozdzienia: <input type="text" name="sum" value="5000" /> rozdzielono: <input type="text" name="rozdzielono" id="rozdzielono" value="0" /> tmp: <input type="text" id="tmp" value="0" /> <table> <tr> </tr> <tr> </tr> <tr> </tr> </table>
Zasadniczo działanie jest prawidłowe jednak występuje problem gdy rozdzielona zostanie pełna kwota i chcę zmodyfikować któryś element.