Здравствуйте!
Имеется кусочек кода, который с каталога товаров при клике на кнопку "Добавить в корзину" конкретного товара - добавляет галочку этому товару, меняет текст на "Перейти в корзину", также соответственно меняет путь ссылки (переход в корзину), изменяет значение у ссылки data-show
с 0 на цифру 1 и удаляет class="add-to-cart"
у ссылки, чтобы не сработало e.preventDefault();
Проблема в том, что это же самое срабатывает и с карточки товара на 3-й клик по кнопке "Добавить в корзину" (1-й и 2-й клик работает нормально - идёт добавление товара в корзину). В карточке товара нет необходимости изменять путь ссылки, добавлять ссылке data-show="1"
и удалять class="add-to-cart"
у ссылки, чтобы не сработало e.preventDefault();
Код JS:
$(document).on('click', '.add-to-cart', function (e) {
e.preventDefault();
that = $(this),
shows = parseInt(that.attr("data-show"),10),
add = that.attr("data-text");
if(shows==0){
that.closest('.catalog-tovarov').find('#mot3').show('slow');
$(this).removeClass('add-to-cart');
that.attr("data-show", "1");
that.text(add);
that.attr("href", "http://test.ru/korzina");
}
});
Код с каталога товаров:
<div class="catalog-tovarov">
<div id="mot3" style="display: none;">
<img src="images/check.png" />
</div>
<a class="add-to-cart" data-show="0" data-text="Перейти в корзину" href="http://test.ru/addtocart/6">Добавить в корзину</a>
</div>
Код с карточки товара:
<div class="product-kartochka">
<a class="add-to-cart" href="http://test.ru/addtocart/6">Добавить в корзину</a>
</div>
Суть в том, что надо скорее всего как-то конкретно обратиться к ссылке только в каталоге товаров (возможно по id), а для ссылки в карточке товара изменять ни чего не надо. Надеюсь на Вашу помощь:)
Смотрим мой комментаррий, если это то что вам нужно то вот пробуем этот вариант
$(document).on('click', '.catalog-tovarov>.add-to-cart', function (e) {
console.log(1);
});
и смотрим в консоль. То что вам нужно?
В else делаете все нужные манипуляции для кнопки которая находится в карточке товара
$(document).on('click', '.add-to-cart', function (e) {
e.preventDefault();
that = $(this),
shows = parseInt(that.attr("data-show"),10),
parent = that.closest('.catalog-tovarov'),
add = that.attr("data-text");
if(shows==0 && parent.hasClass('catalog-tovarov')){
parent.find('#mot3').show('slow');
$(this).removeClass('add-to-cart');
that.attr("data-show", "1");
that.text(add);
that.attr("href", "http://test.ru/korzina");
}
else{
}});
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Прошу дать советЯ начал проходить курс по Swift
Суть алгоритма в вычислении определенного интеграла квадратурным методом Гауссаg10c1,
Решил попробовать пописать под Android, соответственно появилось очень большое количество вопросовКому не трудно ответьте пожалуйста