Доброго времени суток!
На странице есть окно корзины, где показывается кол-во товара и сумму (sale.basket.basket.line)
При добавлении нового товара в корзину посылается ajax запрос на добавление (ADD2BASKET) и обновляется окно.
[CODE]function addToCart(id, url)
{
$.ajax({
url: url + "index.php?action=ADD2BASKET&id=" + id,
type: "GET",
dataType: "text",
success: console.log('success'),
error: console.log('error')
});
$( document ).ajaxComplete(function() {
refreshLeftCart();
});
}
function refreshLeftCart()
{
$.ajax({
url: "/ajax_handler.php",
type: "POST",
dataType: "text",
success: function(data){
$('.cbox').html(data)
}
});
}
[/CODE]
refreshLeftCart() отправляет пост запрос к ajax_handler.php, а результат записывает в [COLOR=#000080]$('.cbox')[/COLOR]
там компонент подключается отдельно:[CODE]<? require_once($_SERVER['DOCUMENT_ROOT']. "/bitrix/modules/main/include/prolog_before.php");
$APPLICATION->IncludeComponent(
"bitrix:sale.basket.basket.line",
"cart_line_mzf",
array(
"PATH_TO_BASKET" => SITE_DIR."personal/cart/",
"SHOW_NUM_PRODUCTS" => "Y",
"SHOW_TOTAL_PRICE" => "Y",
"SHOW_EMPTY_VALUES" => "Y",
"SHOW_PERSONAL_LINK" => "N",
"PATH_TO_PERSONAL" => SITE_DIR."personal/",
"SHOW_AUTHOR" => "N",
"PATH_TO_REGISTER" => SITE_DIR."login/",
"PATH_TO_PROFILE" => SITE_DIR."personal/",
"SHOW_PRODUCTS" => "N",
"POSITION_FIXED" => "N"
),
false
);
?>
[/CODE]Проблема в чем: после нескольких нажатий (на добавление товара в корзину) перестает работать, а если нажать очень много раз - то виснет.
Возможно кто-то сталкивался с такими проблемами, или знает решение более адекватное
На странице есть окно корзины, где показывается кол-во товара и сумму (sale.basket.basket.line)
При добавлении нового товара в корзину посылается ajax запрос на добавление (ADD2BASKET) и обновляется окно.
[CODE]function addToCart(id, url)
{
$.ajax({
url: url + "index.php?action=ADD2BASKET&id=" + id,
type: "GET",
dataType: "text",
success: console.log('success'),
error: console.log('error')
});
$( document ).ajaxComplete(function() {
refreshLeftCart();
});
}
function refreshLeftCart()
{
$.ajax({
url: "/ajax_handler.php",
type: "POST",
dataType: "text",
success: function(data){
$('.cbox').html(data)
}
});
}
[/CODE]
refreshLeftCart() отправляет пост запрос к ajax_handler.php, а результат записывает в [COLOR=#000080]$('.cbox')[/COLOR]
там компонент подключается отдельно:[CODE]<? require_once($_SERVER['DOCUMENT_ROOT']. "/bitrix/modules/main/include/prolog_before.php");
$APPLICATION->IncludeComponent(
"bitrix:sale.basket.basket.line",
"cart_line_mzf",
array(
"PATH_TO_BASKET" => SITE_DIR."personal/cart/",
"SHOW_NUM_PRODUCTS" => "Y",
"SHOW_TOTAL_PRICE" => "Y",
"SHOW_EMPTY_VALUES" => "Y",
"SHOW_PERSONAL_LINK" => "N",
"PATH_TO_PERSONAL" => SITE_DIR."personal/",
"SHOW_AUTHOR" => "N",
"PATH_TO_REGISTER" => SITE_DIR."login/",
"PATH_TO_PROFILE" => SITE_DIR."personal/",
"SHOW_PRODUCTS" => "N",
"POSITION_FIXED" => "N"
),
false
);
?>
[/CODE]Проблема в чем: после нескольких нажатий (на добавление товара в корзину) перестает работать, а если нажать очень много раз - то виснет.
Возможно кто-то сталкивался с такими проблемами, или знает решение более адекватное