JQuery Cookie是一個用來操作瀏覽器cookies的插件,可以輕松地實現購物車的功能。
首先,我們要引入JQuery和jQuery Cookie:
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> <script src="https://cdn.jsdelivr.net/jquery.cookie/1.4.1/jquery.cookie.min.js"></script>
接下來,我們可以創建一個“添加到購物車”按鈕,當用戶點擊該按鈕時,把商品信息存儲到cookie中:
<button class="add-to-cart" data-id="1" data-name="筆記本電腦" data-price="3999">添加到購物車</button> <script> $('.add-to-cart').click(function() { var id = $(this).data('id'); var name = $(this).data('name'); var price = $(this).data('price'); var cart = $.cookie('cart') || '{}'; cart = JSON.parse(cart); if (cart.hasOwnProperty(id)) { cart[id].quantity++; } else { cart[id] = { 'name': name, 'price': price, 'quantity': 1 }; } $.cookie('cart', JSON.stringify(cart), {expires: 7, path: '/'}); }); </script>
上面的代碼中,我們使用了data屬性來存儲商品信息,當用戶點擊按鈕時,我們把這些信息從DOM中獲取,然后將其存儲到cookie中。如果cookie中已經存在該商品,我們只需增加其數量即可。
最后,我們可以創建一個購物車頁面,顯示用戶選擇的商品:
<table> <thead> <tr> <th>商品名稱</th> <th>單價</th> <th>數量</th> <th>小計</th> </tr> </thead> <tbody> <script> var cart = $.cookie('cart'); cart = JSON.parse(cart); for (var id in cart) { var item = cart[id]; var subtotal = item.price * item.quantity; $('<tr><td>' + item.name + '</td><td>' + item.price + '</td><td>' + item.quantity + '</td><td>' + subtotal + '</td></tr>').appendTo('tbody'); } </script> </tbody> </table>
在上面的代碼中,我們先從cookie中取出用戶選擇的商品,然后遍歷它們,將它們的名稱、價格、數量以及小計添加到購物車表格中。這樣,就可以方便地展示用戶的購物車了。
上一篇mysql一列用逗號隔開
下一篇制作樹形菜單css