JS小案例之购物车
来源:互联网 发布:网络黄金 编辑:程序博客网 时间:2024/05/01 06:02
JS小案例之购物车
gwc1.js
function add_shoppingcart(ele){//获取当前行的商品信息var eleTr = ele.parentNode.parentNode;var eles = eleTr.getElementsByTagName("td");var name = eles[0].innerText;var price = eles[1].innerText;//alert(name+price);var flag = find(name);if(!flag){//添加到购物车中var tbody = document.getElementById("goods");var tr = document.createElement("tr");tr.innerHTML = "<td>"+name+"</td> "+"<td>"+price+"</td> "+"<td align='center'> "+ "<input type='button' value='-' onclick=\"remove_one(this)\" /> "+ "<input type='text' size='3' readonly value='1'/> "+ "<input type='button' value='+' onclick=\"add_one(this)\" /> "+ "</td> "+ "<td>"+price+"</td> "+ "<td align='center'><input type='button' value='x' onclick=\"delete1(this)\"/></td>"; tbody.appendChild(tr);}total_price();}function find(str){var tbody = document.getElementById("goods");var trs = tbody.getElementsByTagName("tr");//console.log(str+"length:"+trs.length);for(var i=0;i<trs.length;i++){var td_name = trs[i].childNodes[0];var name = td_name.innerText;//console.log(name);if(str==name){add(trs[i]);return true;}}return false;}function add(tr) {var tds = tr.getElementsByTagName("td");var td_price = tds[1];var price = parseInt(td_price.innerText);var td_count = tds[2];var input = td_count.getElementsByTagName("input")[1];var num = parseInt(input.value);var td_value = tds[3];var value = parseInt(td_value.innerText);num ++;value += price;input.value = num;td_value.innerText = value;total_price();}function delete1(ele){var eleTr = ele.parentNode.parentNode;eleTr.parentNode.removeChild(eleTr);total_price();}function remove_one(ele) {var tr = ele.parentNode.parentNode;var tds = tr.getElementsByTagName("td");var td_price = tds[1];var price = parseInt(td_price.innerText);var td_count = tds[2];var input = td_count.getElementsByTagName("input")[1];var num = parseInt(input.value);var td_value = tds[3];var value = parseInt(td_value.innerText);//alert(price+num+value);if(num>1){num--;value-=price;input.value = num;td_value.innerText = value;}total_price();}function add_one(ele) {var tr = ele.parentNode.parentNode;var tds = tr.getElementsByTagName("td");var td_price = tds[1];var price = parseInt(td_price.innerText);var td_count = tds[2];var input = td_count.getElementsByTagName("input")[1];var num = parseInt(input.value);var td_value = tds[3];var value = parseInt(td_value.innerText);num ++;value += price;input.value = num;td_value.innerText = value;total_price();}function total_price(){var total = document.getElementById("total");var tbody = document.getElementById("goods");var trs = tbody.getElementsByTagName("tr");//alert(111);var sum = 0;for(var i=0;i<trs.length;i++){var td_price = trs[i].getElementsByTagName("td")[3];//console.log(td_price);var price = parseInt(td_price.innerText);//console.log(price);//console.log(trs.length);sum += price;}//console.log(sum);total.innerHTML = sum;}
gwc1.html
<!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="gwc1.js" type="text/javascript"></script> </head> <body> <h1>真划算</h1> <table> <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"> <!-- <tr> <td>罗技M185鼠标</td> <td>80</td> <td align="center"> <input type="button" value="-" onclick="remove_one(this);"/> <input type="text" size="3" readonly value="1"/> <input type="button" value="+" onclick="add_one(this);"/> </td> <td>80</td> <td align="center"><input type="button" value="x" onclick="delete1(this);"/></td> </tr> --> </tbody> <tfoot> <tr> <td colspan="3" align="right">总计</td> <td id="total"></td> <td></td> </tr> </tfoot> </table> </body></html>
0 0
- JS小案例之购物车
- 添加购物车小案例
- 购物车小案例【简单版】
- AngularJS小案例_购物车
- Session案例之实现购物网址购物车
- 【JS】JS小案例之表格操作
- 超市购物小票案例
- Session小案例-----简单购物车的使用
- Js小案例之选择水果
- js经典小案例之倒计时
- 经典案例: 购物车
- 购物车案例_02
- Vue.js框架练习之购物车
- js学习笔记之购物车1
- js小案例
- JS入门小案例
- 一个小小购物车案例
- 简单购物车应用案例
- java线程学习(六)—线程状态图
- 105-storm 整合 kafka之保存HBase数据库
- OC中id和NSobject区别
- 【Android】用贝塞尔曲线画了一个碗
- CSS问题
- JS小案例之购物车
- 保持痛感
- Linux下使用OpenSSL生成证书
- Mybatis框架基础学习(二)
- c++ primer第五版(中文)习题答案 第十章第三节第三小节-lambda捕获和返回
- 连载《一个程序猿的生命周期》- 36、突破失败的自我感悟
- Java EE 请求响应对象
- Dism 错误 3
- Python实例浅谈之十国际化支持