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

голоса: +3

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

В панели управления эффект включен, но думаю проблема не в этом, т.к. корзина не обновляется автоматически.

Автоматически информация в корзине меняется только в категориях.

На главной, странице Все товары и странице товара не обновляется автоматически корзина.

http://russbus-parts.ucoz.net/shop/20/desc/perednij-tormoznoj-disk

Возможно не хватает какого то скрипта или кода, подскажите.

Адрес сайта http://russbus-parts.ucoz.net/
Закрыто с пометкой: Проблема решена
| Автор: | Категория: Интернет-магазин
Повторно показано | | Автор: Yuri_Geruk
В шаблоне вид товара внес правки:

В картинке товара id="$BLOCK_PREF$-gphoto-$ID$" заменил на id="id-gphoto-$ID$"
И в кнопке добавления товара в корзину заменил id="$BLOCK_PREF$-$ID$-basket" на id="id-$ID$-basket"

Эффект улетания с автообновлением корзины заработал.

Осталось победить страницу товара
Полностью заменил код вывода фотографий на странице товара, проблема испраавилась.

Ответов: 1

голоса: +3

Сергей, обнови скрипт в шаблоне корзины, теперь он выглядит так:

<!--
 var lock_buttons = 0;
 
 function clearBasket(){
 if(lock_buttons) return false; else lock_buttons = 1;
 var el = $('#shop-basket');
 if(el.length){ var g=document.createElement("div"); $(g).addClass('myWinGrid').attr("id",'shop-basket-fade').css({"left":"0","top":"0","position":"absolute","border":"#CCCCCC 1px solid","width":$(el).width()+'px',"height":$(el).height()+'px',"z-index":5}).hide().bind('mousedown',function(e){e.stopPropagation();e.preventDefault();_uWnd.globalmousedown();}).html('<div class="myWinLoad" style="margin:5px;"></div>'); $(el).append(g); $(g).show(); }
 _uPostForm('',{type:'POST',url:'/shop/basket',data:{'mode':'clear'}});
 ga_event('basket_clear');
 return false;
 }
 
 function removeBasket(id){
 if(lock_buttons) return false; else lock_buttons = 1;
 $('#basket-item-'+id+' .sb-func').removeClass('remove').addClass('myWinLoadS').attr('title','');
 _uPostForm('',{type:'POST',url:'/shop/basket',data:{'mode':'del', 'id':id}});
 return false;
 }
 
 function add2Basket(id,pref){
 if(lock_buttons) return false; else lock_buttons = 1;
 var opt = new Array();
 var err_msg = '';
 $('#b'+pref+'-'+id+'-basket').attr('disabled','disabled');
 $('#'+pref+'-'+id+'-basket').removeClass('done').removeClass('err').removeClass('add').addClass('wait').attr('title','');
 $('#'+pref+'-'+id+'-options-selectors').find('input:checked, select').each(function(){
 opt.push(this.id.split('-')[3]+(this.value !== '' ? '-'+this.value :''));
 
 if(this.value !== ''){
 opt.push(this.id.split('-')[3]+(this.value !== '' ? '-'+this.value :''));
 }else{
 err_msg += '<li>'+$(this).parent().parent().find('span.opt').html().replace(':', '')+'</li>';
 }
 });
 if(err_msg == ''){
 _uPostForm('',{type:'POST',url:'/shop/basket',data:{'mode':'add', 'id':id, 'pref':pref, 'opt':opt.join(':'), 'cnt':$('#q'+pref+'-'+id+'-basket').attr('value')}});
 ga_event('basket_add');
 $.fancybox('#added-to-cart-message-alert'); 
 }else{
 lock_buttons = 0;
 shop_alert('<div class="MyWinError">Опции<ul>'+err_msg+'</ul>обязательны для выбора</div>','Замечания','warning',350,100,{tm:8000,align:'left',icon:'http://s79.ucoz.net/img/icon/warning.png', 'onclose': function(){ $('#b'+pref+'-'+id+'-basket').removeAttr('disabled'); $('#'+pref+'-'+id+'-basket').removeClass('wait').addClass('add'); }});
 }
 return false;
 }
 
 function buyNow(id,pref){
 if(lock_buttons) return false; else lock_buttons = 1;
 var opt = new Array();
 $('#b'+pref+'-'+id+'-buynow').attr('disabled','disabled');
 $('#'+pref+'-'+id+'-buynow').removeClass('done').removeClass('err').removeClass('now').addClass('wait').attr('title','');
 $('#'+pref+'-'+id+'-options-selectors').find('input:checked, select').each(function(){ opt.push(this.id.split('-')[3]+(parseInt(this.value) ? '-'+this.value :''));});
 _uPostForm('',{type:'POST',url:'/shop/basket',data:{'mode':'add', 'id':id, 'pref':pref, 'opt':opt.join(':'), 'cnt':$('#q'+pref+'-'+id+'-basket').attr('value'), 'now':1}});
 ga_event('basket_buynow')
 return false;
 }
 //-->

Восстанови стандартный, посмотри, что лежит в <script> и замени в своем шаблоне.

| Автор:
Скрипт в корзине восстановил, но это ни начто не повлияло

Эффект улетания и автообновление корзины происходит только в категорях

На главной странице, странице Все товары и Страница товара, эффект улетания товара в корзину и автообновление корзины не происходит
...