Если товар в корзине, поменять значение input на "В корзине"

RSS
Если товар в корзине, поменять значение input на "В корзине"
 
Если товар в корзине, поменять значение input на "В корзине"

Если Вам нужно поменять текст на кнопке, добавляющей товар в корзину, достаточно воспользоваться методом API "CSaleBasket::GetList - который возвращает результат выборки записей из корзины" и немножко js-а
 
В если добавление товара происходит не по input а по ссылке href как быть ?  
 
В целом тоже самое.

Предположим есть ссылка:
Код
<a href="<?echo $arResult["ADD_URL"];?>" class="to_basket">В корзину</a>


Добавляем скрипт, который изменит содержимое ссылки по клику
Код
<script>
$(document).ready(function () {
    $('.to_basket').click(function () {
        $(this).addClass('in_basket'); //Добавляем class in_basket если хотим стилизовать
        $(this).text("В корзине");
    });
});
</script> 

Ну и проверка на наличие в корзине. Тут все также, через CSaleBasket::GetList.
Целиком примерно так
Код
<?
$dbBasketItems = CSaleBasket::GetList(
    array(
        "NAME" => "ASC",
        "ID" => "ASC"
    ),
    array(
        "FUSER_ID" => CSaleBasket::GetBasketUserID(),
        "LID" => SITE_ID,
        "PRODUCT_ID" => $arResult['ID'], //ID текущего товара
        "ORDER_ID" => "NULL",
        "DELAY" => "N" //Исключая отложенные
    ),
    false,
    false,
    array("PRODUCT_ID")
);
while ($arItemsBasket = $dbBasketItems->Fetch()) {
    $itInBasket = $arItemsBasket['PRODUCT_ID'];
}
?> 

<? if (isset($itInBasket)) { ?>
    <a href="<?echo $arResult["ADD_URL"];?>" class="to_basket in_basket">В корзине</a>
<?} else {?>
    <a href="<?echo $arResult["ADD_URL"];?>" class="to_basket">В корзину</a>
<?}?> 

<script>
$(document).ready(function () {
    $('.to_basket').click(function () {
        $(this).addClass('in_basket'); //Добавляем class in_basket если хотим стилизовать
        $(this).text("В корзине");
    });
});
</script> 
 
Михаил спасибо за ответ, у меня кнопка выводиться так:
 
немного не так ка ку меня добавляет
и минус  в том что он не запоминает выбор, т.е. если перезагрузить страницу то сброситься весь js

подскажите Михаил

вот так у меня кнопка идет:
 
http://prntscr.com/nsr5mb
Читают тему (гостей: 1)

Кроме создания сайтов, я так же веду блог с заметками о вебразработке, записываю бесплатные видеоуроки и содержу форум, на котором можно задавать вопросы и просто общаться. Заметки, преимущественно - это короткие или подробные рецепты, по реализации часто требуемого функционала- в рамках разработки сайтов на 1С-Битрикс

Показать еще