Тут так же, если выбрать сперва 2ой радио в 1 строке, выводит 3090. После этого жмем второй из второй строки, выводит 1540.
Потом жмем второй из третей строки, выводит 1500. А должен складывать все значения и вывести 3630 и 4130 соответственно, вот в чем у меня сложность очередная. Получается что он радио(чекбоксы) с разными name начинает считать с дефолтного totalSum, в вашем примере с 1000. |
Цитата:
|
Цитата:
<!DOCTYPE html> <html> <head> <meta http-equiv='Content-Type' content='text/html; charset=windows-1251' /> <script src='http://code.jquery.com/jquery-latest.js'></script> <!-- <script src="https://code.angularjs.org/1.3.9/angular.min.js"></script> <script src="https://code.angularjs.org/1.3.9/angular-route.js"></script> <link rel='stylesheet type=text/css href=tmp.css' /> <link rel="stylesheet/less" type="text/css" href="style.less"> <script src="http://cdnjs.cloudflare.com/ajax/libs/less.js/2.5.0/less.min.js"></script> --> <style type='text/css'> </style> <script type='text/javascript'> $(function(){ var totalSum = 1000; $('input[name="roliki"], input[name="mehanizm"], #sborka, #dostavka').click(function(event) { calc(); }); $('#totalsum').text(totalSum); function calc() { var sum = totalSum; $('input[name="roliki"]:checked, input[name="mehanizm"]:checked, #sborka:checked, #dostavka:checked').each(function(){ sum+=parseInt(this.value); }); $('#totalsum').text(sum); }; }); </script> </head> <body> <div> <input type="radio" checked value="0" name="mehanizm"> <input type="radio" value="2090" name="mehanizm"> </div> <div> <input type="radio" checked value="0" name="roliki"> <input type="radio" value="540" name="roliki"> <input type="radio" value="530" name="roliki"> </div> <div> <input type="checkbox" value="300" name="dostavka" id="dostavka"> <input type="checkbox" value="500" name="sborka" id="sborka"> </div> <p> <span id="totalsum" style="display:inline"></span> руб. </p> </body> </html> |
Во, спасибо огромное, я бы медотом тыка месяц эту форму мучал:D
Знания javascript'a хромают, на обе ноги) |
Часовой пояс GMT +3, время: 00:25. |