Суммирование чисел
Добрый день. У меня на странице есть вот такой html код:
<div class="summa"></div> <div class="product1"> <div class="price">100</div> <a data-id="633" class="buy-now" onclick="return cart.add(this)">Купить</a> </div> <div class="product2"> <div class="price">200</div> <a data-id="632" class="buy-now" onclick="return cart.add(this)">Купить</a> </div> Мне необходимо, чтобы при клике на гипперссылку в блок summa выходило число из блока price. Подскажите пожалуйста, кто делал подобное. В блоке summa может быть ничего или любое число. |
Янковиц,
<div class="summa"></div> <div class="product1"> <div class="price">100</div> <a data-id="633" class="buy-now" onclick="add(this)">Купить</a> </div> <div class="product2"> <div class="price">200</div> <a data-id="632" class="buy-now" onclick="add(this)">Купить</a> </div> <script> function add(elem) { document.getElementsByClassName('summa')[0].innerHTML = elem.parentElement.getElementsByClassName('price')[0].innerHTML; } </script> Только странно: ни выбора продуктов, ни количеств... Голое число, неизвестно к чему относящееся И где же суммирование? Цитата:
|
Это лишь часть кода. Количество и т.д. все уже работает. Осталась только корзина. Здорово, но немного не то. Нужно, чтобы суммировались числа. Кликнул по одной(+100), добавляет в блок summa 100, кликнул по другой (+200), стало в блоке summa 300. И так далее. Извините если неясно выразился.
|
<div class="summa"></div> <div class="product1"> <div class="price">100</div> <a data-id="633" class="buy-now" onclick="add(this)">Купить</a> </div> <div class="product2"> <div class="price">200</div> <a data-id="632" class="buy-now" onclick="add(this)">Купить</a> </div> <script> function add(elem) { var res = document.getElementsByClassName('summa')[0], price = parseInt(elem.parentElement.getElementsByClassName('price')[0].innerHTML), sum = parseInt(res.innerHTML) | 0; res.innerHTML = sum + price; } </script> |
:dance: :thanks:
|
<a data-id="632" class="buy-now" data-price="XXX" onclick="return cart.add(this)">Купить</a>
Зачем тревожить другие элементы, если в функцию передается this, которое и само с успехом может хранить цену. |
laimas,
В этом коде и все остальное не имеет особого смысла, так что... |
Цитата:
|
Вот так работает:
<a data-id="632" class="buy-now" data-price="XXX" onclick="add(this)">Купить</a> а так нет <a data-id="632" class="buy-now" data-price="XXX" onclick="return cart.add(this)">Купить</a> А в чем разница? И если data-price="XXX" лучше, как это реализовать? |
Зачем вот это data-id="632"? Уж точно это ID товара и используется в скрипте, точно также атрибутом data-price можно передавать с скрипт и цену товара.
|
Часовой пояс GMT +3, время: 21:54. |