Реализуем функционал добавления в корзину, в избранное и в сравнение, для каталога товаров.
Серия 19: Добавление в корзину, избранное и сравнение на AJAX.
Михаил Базаров: 09.02.2018 15:39:28
Серия 19: Добавление в корзину, избранное и сравнение на AJAX.
Реализуем функционал добавления в корзину, в избранное и в сравнение, для каталога товаров. |
Слава Струк: 09.02.2018 15:39:28
Здравствуйте!
После добавления в корзину на месте small.basket появляется сообщение 'basket.small.bazarow' is not a component Не подскажете в чем может быть дело?) |
Слава Струк: 09.02.2018 16:20:02
Скачал архив из 20го урока, заменил, все заработало. |
Михаил Базаров: 09.02.2018 16:37:19
|
Андрей Колчанов: 19.02.2018 16:15:36
Здравствуйте, Михаил!
То же скачал архив из 20го урока и заменил... ![]() Но есть другие проблемы, не могу понять почему у меня происходит не так как у вас: 1. При нажатии на кнопку "В корзину" у вас выглядит так что страница не обновляется, и всплывает окно, что товар добавлен. У меня же происходит так, нажимаю "В корзину" обновляется страница, в корзине товар появляется, но нет всплывающего окна. 2. В вас при нажатии на чекбокс для сравнения, тоже всплывает окно, а у меня нет. Что делать? |
Михаил Базаров: 20.02.2018 02:59:20
|
Андрей Колчанов: 20.02.2018 11:20:43
Скрипты подключены: $APPLICATION->AddHeadScript($templateFolder."/js/jquery.form.js" ); $APPLICATION->AddHeadScript($templateFolder."/js/jquery.jgrowl.min.js" ); После проверки подключены ли скрипты, проделал следующее: 1. свою папку local заархивировал 2. Вашу залил 3. применил ваш шаблон - всплывающее окно "Товар добавлен..." - работает 4. Залили свой шаблон сайта в папку local (рядом с вашим), применил - не работает 5. скопировал свой шаблон корзины в ваш шаблон сайта, выбрал в компоненте свой шаблон корзины - работат Получается дело не в шаблоне компонента, а в моем шаблоне сайта, но где копать? Не пойму... Скрипты есть, шаблон компонента рабочий... Что еще может повлиять на то что оно обновляется, видимо дело в обновлении страницы? |
Михаил Базаров: 20.02.2018 15:43:03
use Bitrix\Main\Page\Asset; CJSCore::Init(array("jquery")); |
Андрей Колчанов: 20.02.2018 21:16:14
Скопировал из вашего фала header.php почти все строки из <head> ![]() Разработало! Спасибо большое!!! |
Андрей Колчанов: 21.02.2018 08:01:15
Доброе утро! Сейчас заметил, почему то оформление надписи и иконки меняется после добавления в корзину.
Не, ну, должно было конечно поменяться но результат не тот ![]() Постараюсь по проще спросить ![]() В шаблоне компонента ваш код, был в одном из уроков:
|
Андрей Колчанов: 25.02.2018 17:33:34
ЙЙЙЙееес, разобрался в файле /ajax/add2basket.php нужно указать свой шаблон, а не ajax.
|
Андрей Колчанов: 27.02.2018 07:28:55
Доброе утро, Михаил!
Было бы неплохо, чтобы при повторном нажатии на кнопку Избранное товар удалялся из избранного. Причины: 1. По аналогии с кнопкой В сравнение; 2. И если посетитель сайта случайно нажал В избранное и не пришлось потом специально заходить в избранное и удалять не нужный товар. |
Владислав Кузнецов: 14.03.2018 11:42:09
Добрый день.
Все сделано по Вашей инструкции, но при добавлении в избранное, не передается название, а все остальное передается. При чем если добавлять в избранное из корзины, то все нормально. Подскажите куда копать, а то всю голову сломал уже. |
3amok161: 07.04.2018 22:20:39
Михаил Базаров, Здравствуйте!
Подскажите, пожалуйста, не получается самому догадаться в чем проблема. Не получается вывести счетчик товаров в Избранное, уже 500 раз все проверил, все так же как и у вас, но не работает ((( . Вставляю код
Стираю из кода только echo $delaydBasketItems; Все снова становится на свои места. Затем добавляю <?echo $delaydBasketItems;?> во внутрь тега <i> на то место, где должен отображаться счетчик (как в уроке), и снова сайт летит нафиг с той же ошибкой. Получается, что вывод $delaydBasketItems все ломает. . Сейчас без вывода $delaydBasketItems в теге <i> счетчик работает, отображается только при нажатии на кнопку Добавить в избранное в карточке товара, но как только обновляешь страницу счетчик сбрасывается на 0. . . Подскажите, пожалуйста, хотя бы в какую сторону копать. Буду очень благодарен. Может у кого на форуме была такая же проблема? Подскажите, ребята. |
3amok161: 07.04.2018 23:10:31
Как-то туго идет эта серия)))
При реализации отображения счетчика товаров в Корзине возникает такая ошибка на месте где должна быть корзина
|
Михаил Базаров: 08.04.2018 02:33:04
|
3amok161: 09.04.2018 15:34:43
Михаил, спасибо большое! Компонент подключал из bitrix, поэтому не работало.
|
Александр: 20.05.2018 17:41:18
Здравствуйте Михаил. Не очень понятно, каким компонентом выводится список отложенных товаров, если корзиной то как компонент понимает, что выводить нужно отложенные а не товары в корзине?
|
Михаил Базаров: 21.05.2018 22:52:33
Просто открывает сразу, таб с отложенными товарами (basket_item_dlayed вместо basket_items) |
slonikandrew: 09.07.2018 07:32:04
Здравствуйте! Столкнулся с проблемой, при добавлении товара в корзину из карточки товара почему-то не передается его кол-во. Класс к форме добавлен, jquery подключен. В консоли выдает ошибку Uncaught TypeError: $(...).ajaxForm is not a function не могу понять как ее исправить
![]() |
slonikandrew: 09.07.2018 10:40:29
|
gepard09@inbox.ru: 16.08.2018 12:22:50
Здравствуйте. Подскажите пожалуйста какие компоненты нужно использовать, если на сайте нужны (помимо вывода товаров конечно) - только корзина, выбор доставки и оплата робокассой, но НЕ нужен личный кабинет пользователя (так руководство решило). Документация лес дремучий, а вы объясняете очень доходчиво, спасибо вам огромное!
|
Михаил Базаров: 16.08.2018 13:05:22
|
ztx@bk.ru: 26.11.2018 08:22:50
Обнаружил один такой момент, что реализация Избранного через отложенные товары в корзине плохая идея. Один раз купил это избранное и это уже не избранное, надо заново добавлять товар в избранное (
|
Михаил Базаров: 26.11.2018 11:03:06
Ну или, если нужно срочно. Используйте компонент catalog.item - в него просто передавайте ID товаров, которые отложились. |
Стас Ларин: 27.03.2019 12:28:45
Добрый день, сделал все действия по созданию кнопки сравнения, input вывелся все нормально, но как только я нажимаю на input для добавления в список сравнения ничего не происходит и в консоле появляется ошибка
(index):414 Uncaught TypeError: Cannot read property 'checked' of null at compare_tov ((index):414) at HTMLInputElement.onchange ((index):495) Судя по коду она происходит в этом месте: var chek = document.getElementById('compareid_'+id); if (chek.checked) //происходит ошибка при проверке условия { //Добавить var AddedGoodId = id; $.get("/local/ajax/list_compare.php", { action: "ADD_TO_COMPARE_LIST", id: AddedGoodId}, function(data) { $("#compare_list_count"[IMG].html(data); } ); Не подскажите в чем может быть проблема? |
Михаил Базаров: 27.03.2019 13:13:10
Вот тут /local/ajax/list_compare.php тот же самый шаблон сравнения, что и в шапке сайта? |
Стас Ларин: 27.03.2019 13:47:54
Да, скпировал, только он у меня в футере, но на сколько я понимаю это не важно, так как в шапке сайта он туже ошибку выдает и вывел значение переменной chek с помощью consol.log(chek) получает значение null
|
Стас Ларин: 27.03.2019 16:29:24
Простите за беспокойство и спасибо за решение!!! Все заработало, проблема оказалась в лишнем знаке при копировании, после более детального изучения кода и его удаления все заработало на ура!
|
Александр Ермакович: 28.03.2019 14:52:25
Спасибо вам за модули)
А не знаете как из избранного не перемещать к корзину а делать копию? т.е. товар остается в избранном но такой же товар помещается в корзину? |
Сергей Макаренко: 18.03.2021 20:04:50
У меня вообще нет кнопки в корзине "отложить" я так понимаю что у меня этот функционал вообще не подключен, как его подключить?
Спасибо |
EKATERINA Полукарова: 06.04.2021 12:55:45
Михаил, добрый день. Подскажите, пожалуйста, в странице избранного не возможно отправить товар в корзину... В чем может быть проблема... Сам код добавления в корзину работает, но только не на этой странице
![]() Сам код страницы "Избранные": https://yadi.sk/d/ORm8xQmt6b2HTA |
Случайный чел из интернетов: 06.08.2024 04:46:01
Храни тебя господь за эти видосы, мужик. <3
|
Михаил Базаров: 06.08.2024 11:29:43
Пожалуйста
Но лучше смореть новый курс https://bazarow.ru/video/video_new/seazon_1_2023/ Да, за деньгу малую. Но что такое 100 рублей в наши дни) |
Блог-note: заметки разработчика
Обновление цен и остатков из текстового файла, в каталоге 1C-Битрикс.
Задача: прочитать txt-файл с ценами и остатками, который выгружает программа учета по FTP, и обновить эти данные в катал...
Помечаем новинки лейблом в каталоге битрикс
Достаточно часто, при разработке каталога товаров или интернет магазина на системе управления Битрикс, встает задача как...
Самодельная форма добавления элемента на API Битрикс
Компонент iblock.element.add.form написан таким образом, что вы не сможете (не попотев изрядно и не используя js) как уг...
Ajax форма обратной связи, реализация в битрикс
Иногда, на сайте требуется создать форму обратной связи, которая будет писать все данные в инфоблок. Способов реализации...
Переключатель валюты в каталоге 1С-Битрикс
Задача: Дать пользователю возможность самостоятельно выбирать валюту, в которой он хочет видеть цены, в разделе каталога...
Обновить страницу Inapbrowser в приложении Apache Cordova, при выходе из фона
Задача: Мобильное приложение, созданное на Apache Cordova должно перезагрузить текущую страницу, открытую с помощью плаг...
Дать пользователю возможность быстро отредактировать материал
На одном из разрабатываемых сайтов, пользователи формируют его контент. После регистрации, становится доступен персональ...
Вывести артикул в печатную форму бланка заказа
Задача: в печатную форму бланка заказа добавить артикулы товаров и данные о пользователе.
События вызываемые при сохранении заказа, в 1С-Битрикс
Иногда необходимо выполнить определенные действия с заказом при его изменении. Для этого можно использовать события OnS...