Как выводить результат вибронного сумму
<span> <span class="itogo" value="120">120 руб<input type="checkbox" /></span> <span class="itogo" value="123">123 руб<input type="checkbox" /></span> <span class="itogo" value="23">23 руб<input type="checkbox" /></span> <span class="itogo" value="34">34 руб<input type="checkbox" /></span> <span class="itogo" value="45">45 руб<input type="checkbox" /></span> <span class="itogo" value="56">56 руб<input type="checkbox" /></span> <span class="itogo" value="65">65 руб<input type="checkbox" /></span> <span class="itogo" value="76">76 руб<input type="checkbox" /></span> <span class="itogo" value="57">57 руб<input type="checkbox" /></span> </span> <div><span id="summa">0</span></div> <script type="text/javascript"> function summ(){ var summ = document.getElementByid("summ"); var total = 0; $('.itogo').each(function() { total += parseInt($(this).attr('value')); }); summ.innerhtml = total; } </script> помогите разобраться |
Цитата:
<!DOCTYPE html> <html> <head> <script src='http://code.jquery.com/jquery-latest.js'></script> <!-- <link rel='stylesheet type=text/css href=tmp.css' /> --> <style type='text/css'> </style> <script type='text/javascript'> </script> </head> <body> <span> <span class="itogo" value="120">120 руб<input type="checkbox" /></span> <span class="itogo" value="123">123 руб<input type="checkbox" /></span> <span class="itogo" value="23">23 руб<input type="checkbox" /></span> <span class="itogo" value="34">34 руб<input type="checkbox" /></span> <span class="itogo" value="45">45 руб<input type="checkbox" /></span> <span class="itogo" value="56">56 руб<input type="checkbox" /></span> <span class="itogo" value="65">65 руб<input type="checkbox" /></span> <span class="itogo" value="76">76 руб<input type="checkbox" /></span> <span class="itogo" value="57">57 руб<input type="checkbox" /></span> </span> <div><span id="summa">0</span></div> <script type="text/javascript"> function summ(){ var summ = document.getElementById("summa"); var total = 0; $('.itogo').each(function() { total += parseInt($(this).attr('value')); }); summ.innerHTML = total; }; summ(); </script> </body> </html> </html> Сколько же у тебя там ошибок! :( |
Но не выводит же ответ выбронного
|
Вот с выбранными
<!DOCTYPE html> <html> <head> <script src='http://code.jquery.com/jquery-latest.js'></script> <!-- <link rel='stylesheet type=text/css href=tmp.css' /> --> <style type='text/css'> </style> <script type='text/javascript'> </script> </head> <body> <span> <span class="itogo" value="120">120 руб<input type="checkbox" /></span> <span class="itogo" value="123">123 руб<input type="checkbox" /></span> <span class="itogo" value="23">23 руб<input type="checkbox" checked /></span> <span class="itogo" value="34">34 руб<input type="checkbox" /></span> <span class="itogo" value="45">45 руб<input type="checkbox" /></span> <span class="itogo" value="56">56 руб<input type="checkbox" /></span> <span class="itogo" value="65">65 руб<input type="checkbox" checked /></span> <span class="itogo" value="76">76 руб<input type="checkbox" /></span> <span class="itogo" value="57">57 руб<input type="checkbox" /></span> </span> <div><span id="summa">0</span></div> <script type="text/javascript"> function summ(){ var summ = document.getElementById("summa"); var total = 0; $('.itogo > input:checked').each(function() { total += parseInt($(this.parentNode).attr('value')); }); summ.innerHTML = total; }; summ(); </script> </body> </html> </html> |
Цитата:
|
Поменяйте спаны на label - улучшите жизнь пользователя, и когда лейбл щелкнут сразу меняйте валуе на то, которое надо посчитать, а когда отщелкнут - на 0. Валуе храните в data-value, а руб ... сколько будет 120 руб + 35 руб? 120руб35руб. :) До какого падения нравов может дойти parseInt()?
|
Цитата:
|
http://learn.javascript.ru/play/xYLh9b
<!DOCTYPE HTML> <html> <head> <style type="text/css"> #result label { clear: both; display: block; margin: 10px 0; width: 200px; } #result input { float: right; } </style> </head> <body> <div id="result"> <label>120 руб <input data-price="120" type="checkbox"> </label> <label>123 руб <input data-price="123" type="checkbox"> </label> <label>23 руб <input data-price="23" type="checkbox"> </label> <div>Итого: <span id="result-sum">0</span></div> </div> <script type="text/javascript"> (function() { var i, total = 0, resultElem = document.getElementById('result'), resultLabels = resultElem.querySelectorAll('input[type="checkbox"]'), resultSum = document.getElementById('result-sum'); function getSum() { var price = +this.getAttribute('data-price'); total += this.checked ? price : -price; resultSum.innerHTML = total; } for(i=0; i<resultLabels.length; i++) resultLabels[i].onchange = getSum; })(); </script> </body> </html> |
Спасибо огромное то что надо !
|
Часовой пояс GMT +3, время: 12:16. |