簡體   English   中英

當我在瀏覽器 jquery ajax laravel 中按下“后退”按鈕時,服務器上的數據不會更新

[英]Data on server doesn't update when i press “back” button in browser 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');
                }
            });
    }
});

然后,當我點擊這個按鈕時,它讓我進入購物車,正如假設的那樣,但是,當我在瀏覽器中按下“后退”按鈕時,頁面是一樣的:按鈕不是綠色的,鏈接沒有更新到 /cart,數據更新只有當我重新加載該頁面時。 為什么我去購物車時數據沒有更新? 如何更新?

看法:

<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>

后退按鈕不一定更新 dom,它必須與此問題有關, 通過瀏覽器后退按鈕到達時重新加載站點

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM