1 先看效果。如图
![image](http://ww2.sinaimg.cn/large/0060lm7Tly1fkx61lbq63g30r00ifabe.gif)
2 上代码(纯js+jQuery实现)
<!DOCTYPE html>
<html>
<head>
<title>购物车</title>
<meta charset="utf-8" />
<style type="text/css">
h1 {
text-align: center;
}
table {
margin: 0 auto;
width: 60%;
border: 2px solid #aaa;
border-collapse: collapse;
}
table th, table td {
border: 2px solid #aaa;
padding: 5px;
}
th {
background-color: #eee;
}
</style>
<script src="../js/jquery-1.11.1.js"></script>
<script src="../js/add.js"></script>
</head>
<body>
<h1>真划算</h1>
<table id="tb1">
<tr>
<th>商品</th>
<th>单价(元)</th>
<th>颜色</th>
<th>库存</th>
<th>好评率</th>
<th>操作</th>
</tr>
<tr>
<td>罗技M185鼠标</td>
<td>80</td>
<td>黑色</td>
<td>893</td>
<td>98%</td>
<td align="center"><input type="button" value="加入购物车"
onclick="add_shoppingcart(this);" /></td>
</tr>
<tr>
<td>微软X470键盘</td>
<td>150</td>
<td>黑色</td>
<td>9028</td>
<td>96%</td>
<td align="center"><input type="button" value="加入购物车"
onclick="add_shoppingcart(this);" /></td>
</tr>
<tr>
<td>洛克iphone6手机壳</td>
<td>60</td>
<td>透明</td>
<td>672</td>
<td>99%</td>
<td align="center"><input type="button" value="加入购物车"
onclick="add_shoppingcart(this);" /></td>
</tr>
<tr>
<td>蓝牙耳机</td>
<td>100</td>
<td>蓝色</td>
<td>8937</td>
<td>95%</td>
<td align="center"><input type="button" value="加入购物车"
onclick="add_shoppingcart(this);" /></td>
</tr>
<tr>
<td>金士顿U盘</td>
<td>70</td>
<td>红色</td>
<td>482</td>
<td>100%</td>
<td align="center"><input type="button" value="加入购物车"
onclick="add_shoppingcart(this);" /></td>
</tr>
</table>
<h1>购物车</h1>
<table>
<thead>
<tr>
<th>商品</th>
<th>单价(元)</th>
<th>数量</th>
<th>金额(元)</th>
<th>删除</th>
</tr>
</thead>
<tbody id="goods">
</tbody>
<tfoot>
<tr>
<td colspan="3" align="right">总计</td>
<td id="total"></td>
<td></td>
</tr>
</tfoot>
</table>
</body>
</html>
function add_shoppingcart(btn) {
var name = $(btn).parent().siblings().eq(0).html();
var price = $(btn).parent().siblings().eq(1).html();
var $tr = $('<tr>'
+ '<td>'
+ name
+ '</td>'
+ '<td>'
+ price
+ '</td>'
+ '<td align="center">'
+ '<input type="button" value="-" onclick="decrease(this);"/>'
+ '<input type="text" size="3" readonly value="1"/>'
+ '<input type="button" value="+" onclick="increase(this);"/>'
+ '</td>'
+ '<td>'
+ price
+ '</td>'
+ '<td align="center"><input type="button" value="x" onclick="del(this);"/></td>'
+ '</tr>');
$("#goods").append($tr);
sum();
}
function del(btn) {
$(btn).parent().parent().remove();
sum();
};
function increase(btn) {
var amount = $(btn).prev().val();
$(btn).prev().val(++amount);
var price = $(btn).parent().prev().html();
var mny = price * amount;
$(btn).parent().next().html(mny);
sum();
};
function decrease(btn) {
var amount = $(btn).next().val();
if (amount <= 1) {
return;
}
$(btn).next().val(--amount);
var price = $(btn).parent().prev().html();
var mny = price * amount;
$(btn).parent().next().html(mny);
sum();
};
function sum() {
var $trs = $("#goods tr");
var sum = 0;
for (var i = 0; i < $trs.length; i++) {
var $tr = $trs.eq(i);
var mny = $tr.children().eq(3).html();
sum += parseFloat(mny);
}
$("#total").html(sum);
};