<!DOCTYPE html>
<html lang=
"en"
>
<head>
<meta charset=
"utf-8"
>
<meta http-equiv=
"X-UA-Compatible"
content=
"IE=edge"
>
<title>购物车结算</title>
<meta name=
"description"
content=
""
>
<meta name=
"keywords"
content=
""
>
<meta name=
"viewport"
content=
"width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<meta name=
"format-detection"
content=
"telephone=no"
/>
<meta name=
"renderer"
content=
"webkit"
>
<!--<![
endif
]-->
<meta name=
"apple-mobile-web-app-capable"
content=
"yes"
>
<meta name=
"apple-mobile-web-app-status-bar-style"
content=
"black"
>
<style>
.shop-total,
.all-total {
height: 50px;
line-height: 50px;
font-weight: bold;
color: #f00;
float: left;
}
.one-shop,
.all-total,
.shop-total {
width: 400px;
}
p {
margin: 0;
}
.goods-check {
width: 25px;
height: 25px;
margin-top: 5px;
}
.goods-msg,
p,
label {
float: left;
}
</style>
</head>
<body>
<!-- 一个店铺 -->
<div
class
=
"one-shop"
>
<!-- 一个商品 -->
<div
class
=
"one-goods"
>
<div
class
=
"goods-msg"
>
<label
for
=
""
>
<input type=
"checkbox"
class
=
"goods-check GoodsCheck"
>
</label>
<button type=
"button"
class
=
"minus"
>-</button>
<input type=
"text"
class
=
"am-num-text"
value=
"1"
/>
<button type=
"button"
class
=
"plus"
>+</button>
</div>
<p>商品单价:¥<span
class
=
"shop-total-amount GoodsPrice"
>20.00</span></p>
</div>
<!-- 一个商品 -->
<div
class
=
"one-goods"
>
<div
class
=
"goods-msg"
>
<label
for
=
""
>
<input type=
"checkbox"
class
=
"goods-check GoodsCheck"
>
</label>
<button type=
"button"
class
=
"minus"
>-</button>
<input type=
"text"
class
=
"am-num-text"
value=
"1"
/>
<button type=
"button"
class
=
"plus"
>+</button>
</div>
<p>商品单价:¥<span
class
=
"shop-total-amount GoodsPrice"
>9.90</span></p>
</div>
<!-- 一个商品 -->
<div
class
=
"one-goods"
>
<div
class
=
"goods-msg "
>
<label
for
=
""
>
<input type=
"checkbox"
class
=
"goods-check GoodsCheck"
>
</label>
<button type=
"button"
class
=
"minus"
>-</button>
<input type=
"text"
class
=
"am-num-text"
value=
"1"
/>
<button type=
"button"
class
=
"plus"
>+</button>
</div>
<p>商品单价:¥<span
class
=
"shop-total-amount GoodsPrice"
>10.00</span></p>
</div>
<!-- 店铺合计 -->
<div
class
=
"shop-total"
>
<label
for
=
""
>
<input type=
"checkbox"
class
=
"goods-check ShopCheck"
>店铺全选 </label>
<p>本店合计:¥<span
class
=
"shop-total-amount ShopTotal"
>0</span></p>
</div>
</div>
<!-- 一个店铺 -->
<div
class
=
"one-shop"
>
<!-- 一个商品 -->
<div
class
=
"one-goods"
>
<div
class
=
"goods-msg"
>
<label
for
=
""
>
<input type=
"checkbox"
class
=
"goods-check GoodsCheck"
>
</label>
<button type=
"button"
class
=
"minus"
>-</button>
<input type=
"text"
class
=
"am-num-text"
value=
"1"
/>
<button type=
"button"
class
=
"plus"
>+</button>
</div>
<p>商品单价:¥<span
class
=
"shop-total-amount GoodsPrice"
>30.00</span></p>
</div>
<!-- 一个商品 -->
<div
class
=
"one-goods"
>
<div
class
=
"goods-msg"
>
<label
for
=
""
>
<input type=
"checkbox"
class
=
"goods-check GoodsCheck"
>
</label>
<button type=
"button"
class
=
"minus"
>-</button>
<input type=
"text"
class
=
"am-num-text"
value=
"1"
/>
<button type=
"button"
class
=
"plus"
>+</button>
</div>
<p>商品单价:¥<span
class
=
"shop-total-amount GoodsPrice"
>20.00</span></p>
</div>
<!-- 店铺合计 -->
<div
class
=
"shop-total"
>
<label
for
=
""
>
<input type=
"checkbox"
class
=
"goods-check ShopCheck"
>店铺全选 </label>
<p>本店合计:¥<span
class
=
"shop-total-amount ShopTotal"
>0</span></p>
</div>
</div>
<!-- 总计 -->
<div
class
=
"all-total"
>
<label
for
=
""
>
<input type=
"checkbox"
class
=
"goods-check"
id=
"AllCheck"
>全选 </label>
<p>总价合计:¥<span
class
=
"shop-total-amount"
id=
"AllTotal"
>0</span></p>
</div>
<script src=
"http://code.jquery.com/jquery-2.2.0.min.js"
></script>
<script>
$(
".minus"
).click(
function
() {
var
t = $(this).parent().find('.am-num-text');
t.val(parseInt(t.val()) - 1);
if
(t.val() <= 1) {
t.val(1);
}
TotalPrice();
});
$(
".plus"
).click(
function
() {
var
t = $(this).parent().find('.am-num-text');
t.val(parseInt(t.val()) + 1);
if
(t.val() <= 1) {
t.val(1);
}
TotalPrice();
});
$(
".GoodsCheck"
).click(
function
() {
var
goods = $(this).closest(
".one-shop"
).find(
".GoodsCheck"
);
var
goodsC = $(this).closest(
".one-shop"
).find(
".GoodsCheck:checked"
);
var
Shops = $(this).closest(
".one-shop"
).find(
".ShopCheck"
);
if
(goods.length == goodsC.length) {
Shops.prop('checked', true);
if
($(
".ShopCheck"
).length == $(
".ShopCheck:checked"
).length) {
$(
"#AllCheck"
).prop('checked', true);
TotalPrice();
}
else
{
$(
"#AllCheck"
).prop('checked', false);
TotalPrice();
}
}
else
{
Shops.prop('checked', false);
$(
"#AllCheck"
).prop('checked', false);
TotalPrice();
}
});
$(
".ShopCheck"
).change(
function
() {
if
($(this).prop(
"checked"
) == true) {
$(this).parents(
".one-shop"
).find(
".goods-check"
).prop('checked', true);
if
($(
".ShopCheck"
).length == $(
".ShopCheck:checked"
).length) {
$(
"#AllCheck"
).prop('checked', true);
TotalPrice();
}
else
{
$(
"#AllCheck"
).prop('checked', false);
TotalPrice();
}
}
else
{
$(this).parents(
".one-shop"
).find(
".goods-check"
).prop('checked', false);
$(
"#AllCheck"
).prop('checked', false);
TotalPrice();
}
});
$(
"#AllCheck"
).click(
function
() {
if
($(this).prop(
"checked"
) == true) {
$(
".goods-check"
).prop('checked', true);
TotalPrice();
}
else
{
$(
".goods-check"
).prop('checked', false);
TotalPrice();
}
$(
".ShopCheck"
).change();
});
function
TotalPrice() {
var
allprice = 0;
$(
".one-shop"
).each(
function
() {
var
oprice = 0;
$(this).find(
".GoodsCheck"
).each(
function
() {
if
($(this).is(
":checked"
)) {
var
num = parseInt($(this).parents(
".one-goods"
).find(
".am-num-text"
).val());
var
price = parseFloat($(this).parents(
".one-goods"
).find(
".GoodsPrice"
).text());
var
total = price * num;
oprice += total;
}
$(this).closest(
".one-shop"
).find(
".ShopTotal"
).text(oprice.toFixed(2));
});
var
oneprice = parseFloat($(this).find(
".ShopTotal"
).text());
allprice += oneprice;
});
$(
"#AllTotal"
).text(allprice.toFixed(2));
}
</script>
</body>
</html>