Меню
Если товар в корзине, поменять значение 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
А этот способ работает и на catalog.element  и на catalog.section?
Цитата
Alex Kan пишет:
$arResult['ID']
Да, только передайте правильно ID товара
$arResult['ID'] - в карточке
$arElement['ID'] - списке

Что бы не передавалось следующим элементам, обнуляйте переменную
unset( $itInBasket);
в конце вывода.
Михаил Базаров, Битрикс случайно не будет кешировать $itInBasket?
Форма ответов
 
Текст сообщения*
Перетащите файлы
Ничего не найдено
Файл
Загрузить файлы
 

Блог-note: заметки разработчика

Установка Битрикс24 "Интернет-Магазин + CRM" на один домен и настройка работы почты.

Задача: установить лицензию "Интернет-Магазин + CRM" на один домен. Что бы crm была доступна по адресу crm...

Почтовое событие на создание нового элемента инфоблока, через API

Иногда при разработке сайта требуется реализовать функционал добавления элементов инфоблока простыми пользователям.Будет...

Модифицировать состав заказа #ORDER_LIST# в почтовом событии "Новый заказ"

Если вы хотите как-то по особенному сверстать состав заказа в почтовом уведомлении 1С-Битрикс "Новый заказ", у вас это н...

Следующая/предыдущая новость/статья при просмотре подробной в Битрикс

Странное дело, в Битрикс по умолчанию, отсутсвует функционал для навигации внутри новостей или статей типа: "Следующая/...

Автоматически отгрузить и оплатить заказ, при смене статуса на "Выполнен".

Проблема: Заказы, на сайте, обрабатываются только в 1С. При этом 1С не работает с отгрузками и обменивается только стату...

Объединить отдельные поля ФИО в одно свойство при оформлении заказа.

Пользователь, при оформлении заказа, заполняет три отдельных поля с фамилией, именем и отчеством. Нам нужно сохранить эт...

Отсортировать предложения по цене в каталоге 1С-Битрикс

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

INPUT type="file" Предпросмотр превью картинки до загрузки

Рассмотрим на примере компонента "Форма добавления-редактирования элементов инфоблока", как сделать ее более удобной для...

Создание PWA для сайта на 1С-Битрикс

Технология PWA позволяет создать приложение для любого сайта. Не обязательно работающего на 1С-Битрикс, данная заметка ...