Показать сообщение отдельно
  #1 (permalink)  
Старый 13.09.2016, 17:19
Новичок на форуме
Отправить личное сообщение для zaikv Посмотреть профиль Найти все сообщения от zaikv
 
Регистрация: 13.09.2016
Сообщений: 6

Запретить открытие новой страницы "корзина", если есть уже открытая
Здравствуйте, необходима помощь новичку.
Есть ссылка
<a href="javascript:void(0)" id="basket_add" data-add-url="<?= $arResult['ADD_URL'] ?>" class="add-button btn btn-default">В корзину</a>

Есть скрипт
$('#basket_add').click(function ($event) {
 
        var $clicked = $($event.target);
        var quantity = $('#quantity').val();
        var quantityVariable = $('#quantity_variable').val();
        var addUrl = $clicked.data('add-url') + '&' + quantityVariable + '=' + quantity;
 
        $.get(addUrl, null, function () {
            $clicked.unbind($event);
            $clicked.removeAttr('href');
            $clicked.addClass('inbasket');
            $clicked.text('В корзине');
 
            // Обновить корзину в шапке.
            $.get(header_basket_url, null, function (data) {
                $('#header-cart-info').replaceWith(data);
            });
        });
    });

Необходимо чтобы после добавления товара в корзину, осуществлялся переход в корзину на новой вкладке.
Я сначала прописал в скрипте
window.open("ссылка")

, но скрипт не всегда работал корректно: то не происходил переход, то после перехода товар не отображался в корзине(после обновления страницы там был).
После, я явно указал адрес в самой ссылке, добавив target=_blank(до этого удалив строку из скрипта)
<a href="ссылка" id="basket_add" target="_blank" class="add-button btn btn-default">В корзину</a>

У меня возник ряд вопросов:
1. Как лучше сделать?
2. Почему переход через скрипт работал не всегда корректно?
3. Почему после удаления вызова скрипта из адреса, он все равно продолжал выполняться, т.е. после нажатия на кнопку, менялось название кнопки, ее окрас(class=inbasket)?
4 Можно ли создать условие, которое проверяло открыта ли страница с корзиной или нет, дабы не допускать открытие дублирующих окон?
Ответить с цитированием