很多電商網站都有一個購物車功能,用戶可以將自己選購的商品加入到購物車中,然后進行結算。為了方便用戶操作,網站一般會提供全選功能,即用戶可以一鍵勾選所有商品,然后進行結算。本文將介紹如何使用jQuery實現購物車全選計算的功能。
// 全選功能實現 $('#check-all').on('click', function() { var isChecked = $(this).prop('checked'); $('.item-checkbox').prop('checked', isChecked); }); // 單個商品選擇功能實現 $('.item-checkbox').on('click', function() { var isCheckedAll = $('.item-checkbox:checked').length === $('.item-checkbox').length; $('#check-all').prop('checked', isCheckedAll); }); // 計算總價和總數量 function calculate() { var totalQuantity = 0; var totalPrice = 0; $('.item-checkbox:checked').each(function() { var $item = $(this).parents('.item'); var quantity = parseInt($item.find('.item-quantity').val()); var price = parseFloat($item.find('.item-price').text()); totalQuantity += quantity; totalPrice += quantity * price; }); $('.total-quantity').text(totalQuantity); $('.total-price').text(totalPrice.toFixed(2)); } // 初始化 calculate(); $('.item-checkbox').first().trigger('click');
上面的代碼中,首先實現了全選功能,當用戶勾選全選按鈕時,將所有商品的選擇框都勾選上,反之取消勾選。然后實現了單個商品選擇功能,當用戶勾選某個商品時,判斷是否所有商品都已經勾選,如果是,則將全選按鈕勾選上。最后實現了計算總價和總數量的函數,遍歷所有已選擇的商品,累加數量和單價,然后更新界面上的總數量和總價。
使用上面的代碼,就可以實現購物車全選計算的功能,提升用戶體驗,減少用戶操作。
下一篇css怎么掉邊緣線