我这下面哪里出错了,目的想实现全选框的功能
本帖最后由 小黄练编程 于 2022-3-30 18:05 编辑<body>
<table id='tb'>
<tr>
<th><input id='one' name="check" type="checkbox">全选</th>
<th>商品</th>
<th>价钱</th>
</tr>
<tr>
<td><inputname="check" type="checkbox"></td>
<td>iphone8</td>
<td>9000</td>
</tr>
<tr>
<td><inputname="check" type="checkbox"></td>
<td>iphone8</td>
<td>9000</td>
</tr>
<tr>
<td><inputname="check" type="checkbox"></td>
<td>iphone8</td>
<td>9000</td>
</tr>
<script>
var input=document.getElementById('tb').getElementsByTagName('input');
var one=document.getElementById('one');
one.onclick=function(){
for(var i=0;i<input.length;i++){
console.log(this.checked);
input.checked=this.checked;
}
}
for( var i=0;i<input.length;i++){
input.onclick=function(){
var flag=true;
for(var i=0;i<input.length;i++){
if(input.checked===false){
flag=false;
}
}
one.checked=flag;
}
}
</script>
</body>
把 全选 这个check跳过。 i=1。当然你也可以用别的方法判断跳过 ba21 发表于 2022-3-30 18:15
把 全选 这个check跳过。 i=1。当然你也可以用别的方法判断跳过
呜呼,解决了,抱大腿,{:5_100:} 本帖最后由 小黄练编程 于 2022-3-30 20:07 编辑
ba21 发表于 2022-3-30 18:15
把 全选 这个check跳过。 i=1。当然你也可以用别的方法判断跳过
var li=document.getElementsByTagName('li');
for(var i=0;i<li.length;i++){
li.onclick=function(){
for(var i=0;i<li.length;i++)
{
li.style.backgroundColor='';
}
this.style.backgroundColor='pink';
}
}
我又碰到个小问题,为何这里的this改为li【i】会报错啊,是不是哪里不规范??? 小黄练编程 发表于 2022-3-30 20:06
这不明摆了,不在一个作用域 ba21 发表于 2022-3-30 20:09
这不明摆了,不在一个作用域
咋个不在啊?为啥上面那个li有用? 小黄练编程 发表于 2022-3-30 20:29
咋个不在啊?为啥上面那个li有用?
有问题 请新开贴。谢谢 ba21 发表于 2022-3-30 20:31
有问题 请新开贴。谢谢
得勒,开了 ba21 发表于 2022-3-30 20:09
这不明摆了,不在一个作用域
怪不得我把最后this改为li【i】中的i改为别的字母a,外层for循环的i统统改成a也没用,该函数里的for里的i没改,原来如此,如果我就想用li【i】不用this,咋办。咋解决。
页:
[1]