js怎么实现全选和加号按钮++呢?指点下,

js怎么实现全选和加号按钮++呢?指点下,

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Document</title>
<link rel="stylesheet" type="text/css" href="../css/base.css">
<link rel="stylesheet" type="text/css" href="../css/imooc.css">

</head>
<body>
<header>
<img src="../img/logo.png" class="mu">
<nav>
<a href="#">课程</a>
<a href="#" class="top_a">职业路径<img src="../img/icon-new.png"></a>
<a href="#">实战</a>
<a href="#">猿问</a>
<a href="#">手记</a>
</nav>
<div class="top_right">
<div class="rig">
<div class="picture_1"></div>
<div class="picture_2"></div>
<div class="picture_3"></div>
</div>
</div>
<div class="top_search">
<div class="search_left">前端入门</div>
<div class="icon"></div>
</div>
</header>
<section>
<div class="banner">
<p>我的购物车</p>
</div>
</section>
<section>
<table>
<tr>
<th><input type="checkbox" id="selectall">全选</th>
<th>商品名称</th>
<th>总价</th>
<th>单价</th>
<th>数量</th>
<th>操作</th>
</tr>
<tr>
<td><input type="checkbox" class='selectItem'></td>
<td class="a"><img src="../img/g2.jpg">前端小白成长记</td>
<td id="total"></td>
<td>$396</td>
<td><input type="button" value="-"><input type="text" value='0' class="number"><input type="button" value="+" class="add"></td>
<td>删除</td>
</tr>
<tr>
<td><input type="checkbox" class='selectItem'></td>
<td><img src="../img/g1.jpg">前端小白成长记</td>
<td id="total"></td>
<td>$396</td>
<td><input type="button" value="-"><input type="text" value='0' class="number"><input type="button" value="+" class="add"></td>
<td>删除</td>
</tr>
<tr>
<td><input type="checkbox" class='selectItem'></td>
<td><img src="../img/g1.jpg">前端小白成长记</td>
<td id="total"></td>
<td>$396</td>
<td><input type="button" value="-"><input type="text" value='0' class="number"><input type="button" value="+" class="add"></td>
<td>删除</td>
</tr>
<tr>
<td><input type="checkbox" class='selectItem'></td>
<td><img src="../img/g1.jpg">前端小白成长记</td>
<td id="total"></td>
<td>$396</td>
<td><input type="button" value="-"><input type="text" value='0' class="number"><input type="button" value="+" class="add"></td>
<td>删除</td>
</tr>
</table>
</section>
<script src="../js/imooc.js"></script>
</body>
</html>


header{background:rgb(1,1,1);height: 80px;width: 100%;}

.mu{margin-top: 20px;margin-left: 50px;}

.mu,nav{float:left;}

.top_search,.top_right{float:right;}

nav{height: 80px;margin-left: 60px;}

nav a{display: block;height: 80px;width: 80px;float:left;text-align: center;color: #fff;

line-height: 80px;font-size: 18px;}

a.top_a{position: relative;}

a.top_a img{position: absolute;top: 15px;right: -10px;}

.top_search{border-bottom:1px solid gray;height: 50px;width: 250px;font-size: 16px;margin-right: 100px;margin-top: 15px;}

.top_search:hover{background:#363c41;}

.search_left{float:left;height: 35px;width: 70px;background-color: #363c41;text-align: center;line-height: 35px;

margin-top: 10px;}

.top_search .icon{width: 25px;height: 24px;background:url(../img/icon-1-sprite_w22.png);

transform: scale(1.2);margin-top: 20px;margin-right: 10px;}

body{background: white;}

.rig,.top_search .icon{float: right;}

.rig div{float:left;}

.picture_1{background:url(../img/shopcar.png) no-repeat 0 -185px;width: 20px;height: 80px;}

.picture_2{background:url(../img/icon-1-sprite_w22.png) no-repeat 0 -45px;width: 20px;height: 20px;margin-top: 30px;margin-left: 40px;}

.picture_3{width: 44px;height: 44px;border-radius: 50%;background:url(../img/ava.jpg) no-repeat;background-size: cover;margin:20px 30px 0 40px;}

.banner{background:url(../img/cart-header-bg.jpg);height: 250px;}

.banner p{font-size: 40px;color: black;padding-top: 70px;margin-left: 450px;}

table{width: 60%;margin:0 auto;text-align: center;box-shadow: 2px -2px 5px rgba(0,0,0,0.1);margin-top: -62px;border:1px solid red;}

table tr th{background: rgb(235,235,235);padding:25px;}

table td{padding:20px;line-height: 90px;border:1px solid red;}

table td img{margin-left: -50px;}

window.onload=function(){
	// 全选
	function selectAll(){
		var selectall=document.getElementById('selectall'),
			selectItem=document.getElementsByTagName('selectItem');
			selectall.onclick=function(){
				for(var i=0; i<selectItem.length; i++){
					selectItem[i].checked=true;
				}
			}
	}
	// 加号按钮
	var number=document.getElementsByTagName('number');
	var add=document.getElementsByTagName('add');
	for(var i=0; i<add.length; i++){
		(function(el){
			el[el].onclick=function(){
				number[el].value=10;
			}
		})(i)
	}
}


正在回答

登陆购买课程后可参与讨论,去登陆

2回答

你好,你这里的selectAll函数没有调用,上次代码已经进行了修改,没有明确表明,你把这个调用下,然后在点击点击全选的单击事件,所以的都可以全选了,这样是可以实现的,一开始没有实现是因为没有调用这个函数。

这个思路是可以的,还需要添加取消,就是当前是全部选中的,再次点击全部取消,可以给全选按钮添加一个标志,在点击的时候,判断这个标志,假设是no,那么就是没有选中,需要选择,然后全部的单选是也选中,选中之后,改变标志为yes,然后再次单击的时候判断标志。可以尝试下该思路哦。

http://img1.sycdn.imooc.com//climg/5b95cdbd0001f82004550376.jpg

若能帮助到你,望采纳。

祝学习愉快~

好帮手慕糖 2018-09-09 13:40:38

你好,1、这里获取类名,应该是getElementsByClassName();

2、加号的单击这里应该是add

3、每点击一次加号,当前的值加1;例:

http://img1.sycdn.imooc.com//climg/5b94b1f70001941607670609.jpg

若能帮助到你,望采纳。

祝学习愉快~

  • 提问者 这个头像是黑豹 #1
    谢谢,那怎么点击全选按钮,就全选呢,我总觉得自己的想法是对的,但就是没用0.0
    2018-09-09 13:56:51
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
组件化思想开发电商网页 18版
  • 参与学习           人
  • 提交作业       467    份
  • 解答问题       4826    个

本路径带你通过系统学习HTML5、JavaScript、jQuery的进阶知识,不仅如此,还会学习如何利用组件化的思想来开发网页,知识点+案例,使得所学可以更好的得到实践。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师