2017-02-23 41 views
1

所以,問題是:服務器上的數據時,我按下瀏覽器「返回」按鈕不會更新jQuery的AJAX laravel

當我按下「購買」按鈕,它會改變顏色和鏈接,並增加了產品到購物車:

$(document).ready(function(c) { 
    $('.item_add').click(function (event) { 
    var addButton = $(this).children('p'); 
    if(addButton.hasClass('added')) 
    { 
     window.location.href="http://site.loc/cart"; 
    } 

    else 
    { 
     event.preventDefault(); 
     var id = $(this).attr('id'); 
     var href = $(this).attr('href'); 
     var data = {'cart_item_id': id}; 
     var carturl = "http://site.loc/cart"; 

      $.ajax({ 
       url: href, 
       data: data, 
       headers: { 
        'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') 
       }, 
       type: 'POST', 
       dataType: 'JSON', 
       success: function (html) { 
         addButton.addClass('added'); 
         addButton.css('background', 'green'); 
         addButton.parent('a').attr('href', carturl); 
         $('#addOrAlready').text('Added'); 
       } 
      }); 
    } 
}); 

然後,當我點擊這個按鈕,它讓我到購物車,像預想的那樣,但是,當我按下「返回」按鈕,在瀏覽器的頁面是一樣的:按鈕是不是綠色的,和鏈接沒有更新到/購物車,只有當我RELOAD頁面的數據更新。爲什麼當我去購物車時數據不會更新?如何更新它?

查看:

<a href="{{$cart_items->contains('id',$productItem->id) ? route('IndexCart'): route('AddToCart')}}" class="item_add" id="{{$productItem->id}}"> 
           <p class="number item_price {{$cart_items->contains('id',$productItem->id) ? 'added': ''}}"> 
            <i> </i>${{$productItem->price}} 
           </p> 
          </a> 

回答

相關問題