15.08.2016, 18:07
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,126
|
|
Сообщение от Stay_Strong
|
браузер ругается на строку
|
значит вы изменили место input у себя в html
|
|
15.08.2016, 18:10
|
|
Аспирант
|
|
Регистрация: 14.10.2015
Сообщений: 37
|
|
Сообщение от рони
|
значит вы изменили место input у себя в html
|
Понял, между ними еще есть один див просто. Он был изначально, просто он не нужен был, я его не давал.
<div class="product-cart__price">Цена:
<span class="price-val" data-price="890,821,751,709,695,688">890</span>
<div class="product-cart__note">
<span>В зависимости от количества цена может изменяться</span>
</div>
<div class="product-cart__number number"><span class="minus">–</span>
<input class="count" type="text" value="1"><span class="plus">+</span>
</div>
<div class="product-cart__buy"> <span>Заказать</span></div>
Последний раз редактировалось Stay_Strong, 15.08.2016 в 18:16.
|
|
15.08.2016, 18:17
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,126
|
|
Stay_Strong,
если есть проблема, нужен полный html
|
|
15.08.2016, 18:24
|
|
Аспирант
|
|
Регистрация: 14.10.2015
Сообщений: 37
|
|
Сообщение от рони
|
Stay_Strong,
если есть проблема, нужен полный html
|
Полный HTML:
<div class="product-cart__price">Цена:
<span class="price-val" data-price="890,821,751,709,695,688">890</span>
<div class="product-cart__note">
<span>В зависимости от количества цена может изменяться</span>
</div>
<div class="product-cart__number number"><span class="minus">–</span>
<input class="count" type="text" value="1"><span class="plus">+</span>
</div>
<div class="product-cart__buy"> <span>Заказать</span></div>
Вот этот кусок кода не позволяет правильно взять count
<div class="product-cart__note">
<span>В зависимости от количества цена может изменяться</span>
</div>
|
|
15.08.2016, 18:32
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,126
|
|
Сообщение от Stay_Strong
|
Полный HTML:
|
не хватает тега
|
|
15.08.2016, 18:33
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,126
|
|
Stay_Strong,
var next = $(".product-cart__number",el);
|
|
15.08.2016, 18:35
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,126
|
|
Stay_Strong,
<!DOCTYPE html>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
</style>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script>
$(function() {
$(".product-cart__price").each(function(indx, el) {
var pr = $(".price-val", el);
var data = pr.data("price");
var next = $(".product-cart__number",el);
var count = $(".count", next)[0];
var num = +count.value;
next.on("click", ".minus, .plus", function() {
num += $(this).is(".minus") ? -1 : 1;
num < 0 && (num = 0);
count.value = num;
var price = data[0];
if (num >= 20) price = data[1];
if (num >= 50) price = data[2];
if (num >= 100) price = data[3];
if (num >= 500) price = data[4];
if (num >= 1000) price = data[5];
pr.text(num * price)
})
})
});
</script>
</head>
<body>
<div class="product-cart__price">Цена:
<span class="price-val" data-price="[890,821,751,709,695,688]">890</span>
<div class="product-cart__note">
<span>В зависимости от количества цена может изменяться</span>
</div>
<div class="product-cart__number number"><span class="minus">–</span>
<input class="count" type="text" value="1"><span class="plus">+</span>
</div>
<div class="product-cart__buy"> <span>Заказать</span></div>
</div>
</body>
</html>
|
|
15.08.2016, 18:37
|
|
Аспирант
|
|
Регистрация: 14.10.2015
Сообщений: 37
|
|
Сообщение от рони
|
Stay_Strong,
var next = $(".product-cart__number",el);
|
Почему не хватает тэга, все на месте:
<div class="product-cart__price">Цена:
<span class="price-val" data-price="890,821,751,709,695,688">890</span>
<span class="ruble"> руб.</span></div>
<div class="product-cart__note">
<span>В зависимости от количества цена может изменяться</span>
</div>
<div class="product-cart__number number"><span class="minus">–</span>
<input class="count" type="text" value="1"><span class="plus">+</span>
</div>
<div class="product-cart__buy"> <span>Заказать</span></div>
|
|
15.08.2016, 18:45
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,126
|
|
Stay_Strong,
тогда
var next = $(".product-cart__number").eq(indx);
|
|
15.08.2016, 23:10
|
Профессор
|
|
Регистрация: 08.07.2016
Сообщений: 1,332
|
|
рони, вдумайся в что ты пишешь:
if (num >= 20) price = data[1];
if (num >= 50) price = data[2];
if (num >= 100) price = data[3];
if (num >= 500) price = data[4];
if (num >= 1000) price = data[5];
браузер, не вспотеет, конечно, но когда num у тебя 1000 или больше, то выполняются тотально все условия. То есть это не код, а хак.
Ну и самая мякотка, что ТС ниасилил передачу данных без хтмля и уже сейчас накинул на себя удавку. Когда ему начальство скажет поменять скидки, на отдельно взятые или группы товаров, у него все волосы из носа вылезут от ужаса. И придется ему делать как дядя уоррен баффет прописал.
ЗЫ Причем начальство само зависит от коньюктуры, попросту от конкурентов. Конкуренты нарисуют скидку за 150, ТС полезет в свою Модиксную админку, опа, а хрена-то количество не передается в скрипт. Попух. Один специалист хакает, второй хардкодит данные из БД, молодцы, чо, спелись. Но свободный рынок вас научит как свободу любить.
Последний раз редактировалось warren buffet, 15.08.2016 в 23:15.
|
|
|
|