ajax 实现总价刷新,jQuery实现购物车的总价计算和总价传值功能

效果图:

3217881d109d64a89679e12518a994de.png

3fcc333d1c41f17b6502946cc353fce6.png

代码实现:

1.多选框代码:

5c43d2ef15b5801a38d615752278f99b.png

2.结算价格代码:

b21f6b5f8d521e45ac55d3c708516352.png

3. jQuery实现价格计算代码: (当点击多选框时,下面的总计金额会跟随变化)

$(function() {

// 加载完页面时,计算总计

showTotal();

$('.boxx').on('click', function () {

// 选择多选框后,再重新计算

showTotal();

});

});

// 计算总计

function showTotal() {

var total = 0;

var number = 0;

// 1. 获取所有的被勾选的条目复选框!循环遍历

$(".boxx").each(function () {

var isChecked = $(this).prop("checked");

// 如果多选框被选中

if(isChecked == true) {

// 2. 获取复选框的值,即其他元素的前缀

var id = $(this).val();

// alert("id" + id);

//3. 再通过前缀找到小计元素,获取其文本

var text = $("#" + id + "Subtotal").text();

// alert(text);

//4. 累加计算

total += Number(text);

number += 1;

// alert(total);

}

});

// 5. 把总计显示在总计元素上

$("#txts").text(number);//toFixed(2)函数的作用是把total保留2位

$("#totals").text(total.toFixed(2));//toFixed(2)函数的作用是把total保留2位

}

4.当点击结算时,使用jQuery传值到后台去进行处理.

function jiesuan() {

// 1.获取所有被选择的条目的id,放到数组中

var cartItemIdArray = new Array();

$(".boxx").each(function () {

var isChecked = $(this).prop("checked");

// 如果多选框被选中

if(isChecked == true) {

cartItemIdArray.push($(this).val());//把复选框的值添加到数组中

}

});

// 2. 把数组的值toString(),然后赋给表单的cartItemIds这个hidden

$("#cartItemIds").val(cartItemIdArray.toString());

// 把总计的值,也保存到表单中

$("#hiddenTotal").val($("#totals").text());

// 3. 提交这个表单

$("#jieSuanForm").submit();

}

5. 第四步提交的隐藏域表单代码如下:

6.这个过程并不复杂,之所以写成一篇博客,是因为本人对DOM操作不是很熟悉,导致选取DOM元素时耽误了一些时间,做一次笔记,为下次做类似的问题节约时间.

总结

以上所述是小编给大家介绍的jQuery实现购物车的总价计算和总价传值功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值