Uncaught TypeError:Cannot set property 'checked' of null...

今天在写一段代码时,遇见的小错误;代码能够正确的执行,到时每次正确执行输出后,控制台总是多出这一条代码错误。于是在网上搜了许多的解决方法,但还是解决不了,网上的说法有:报错的原因是js执行时在元素渲染之前,从而导致报错,建议使用addEventListener()方法解决,可是我试过后无效。最后排查,发现是自己写的代码错误(获取元素的id值写错),才导致这种低级错误!【以下代码备注改过的出错地方】,对于有类似错误bug的伙伴,不妨检查一下自己的代码是否有误!

 var checkAll=document.querySelector("#checkAll");//之前是这里#checkAll写错!已改
...
...
//1.当所有都打勾时,全选为打勾状态
    lis.forEach(function(item){
        //获取每个li标签里面的input标签
        let checkbox=item.querySelector("input");
        //console.log(checkbox);
        checkbox.onchange=function(){
            //给选中的li元素添加class
            item.className=checkbox.checked?"active":"";
             checkAll.checked = lis.every(item=>item.querySelector("input").checked);
        }

    });
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值