Anumik
@Anumik

Почему не передается кол-во товаров в корзину?

Доброго времени суток!
В компоненте catalog.section форма для изменения кол-ва товара, но значение стандартными средствами битрикс не передавалось. Полез разбираться, прогуглил, все что нашел попробовал, но не работает. В итоге пришел к скрипту который передает /catalog/?action=ADD2BASKET&id=391&quantity=5 (?action=ADD2BASKET&id=391 из переменной $arItemIDs['BUY_LINK'], переменная quantity задана и написана верно, вытаскивается jquery с инпута), но почему то передается всегда значение 2, не могу понять почему так может быть?
Скрипт
$('.bx_bt_button.bx_medium').on('click',function(e){

						if(!$(this).hasClass('success-btn')){
							e.preventDefault();
							$(this).addClass('success-btn');
							$(this).text('В корзине');
							var quantity = "&quantity=" + $(this).parents(".catalog_item_buy").find('input[name="quantity"]').val();
							var url = $(this).attr('href') + quantity;
							console.log(url);
							$.ajax({
							type:'POST',
							beforeSend:function(){
								BX.showWait();
							},
							url:url,
							success:function(data){
								BX.onCustomEvent('OnBasketChange');
								$('.bx_big.bx_bt_button.bx_cart').attr({'href':'/personal/cart/'});

								BX.closeWait();
							},

						})
					}


			})

Стандартный JS не трогал
  • Вопрос задан
  • 710 просмотров
Пригласить эксперта
Ответы на вопрос 1
Во первых в компоненте есть галочка связанная с возможностю выбора количества товара (типа передавать количество или разрешить выбор количества).

Далее по скрипту. Если вы переделывали верстку, то проверьте классы. Количество получается селекторами. Сначала ищется родительский элемент с классом ".catalog_item_buy", поток в нем поле с именем 'input[name="quantity"]' и берется значение количества.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы