鍍金池/ 問答/HTML/ input的全選反選

input的全選反選

<body>
<input type="checkbox" class="all">全選
<div class="box">
    <input type="checkbox" >吃飯
    <br>
    <input type="checkbox">睡覺
    <br>
    <input type="checkbox">打豆豆
</div>
<script>
    var box=document.querySelector('.box')
    var input=box.querySelectorAll('input')
    var all=document.querySelector('.all')
    all.onclick=function () {
        for(var i=0;i<input.length;i++){
            input[i].checked=this.checked
        }
    }
    var stat
    for (var i=0;i<input.length;i++){
        input[i].onclick=function () {
            for(var j=0;j<input.length;j++){
                stat=true
                if(input[j].checked==false){
                    stat=false
                }
            }
            all.checked=stat
        }
    }
</script>
</body>

我最近在自學(xué)js,但是在操作全選反選的時(shí)候,發(fā)現(xiàn)這個(gè)問題,就是我感覺我這個(gè)是正確的,但是運(yùn)行中,發(fā)現(xiàn)全選和反選都沒正確執(zhí)行,希望大家?guī)臀铱纯?,謝謝大家

回答
編輯回答
編輯回答
我以為
        var box=document.querySelector('.box')
        var input=box.querySelectorAll('input')
        var all=document.querySelector('.all')
        all.onclick=function () {
            for(var i=0;i<input.length;i++){
                input[i].checked=this.checked
            }
        }
        for (var i=0;i<input.length;i++){
            input[i].onclick=function () {
                for(var j=0;j<input.length;j++){
                    if(input[j].checked==false){
                      all.checked=false;
                      return;
                    }
                }
                all.checked=true
            }
        }
2018年6月28日 06:34