純js全選、多選


使用純js來寫一個模擬購物車的全選和多選功能。

 

思路:

  1、需要給每一個input設置點擊事件

  2、全選就是把所有的checkbox設置為true

  3、取消一個不全選,就是判斷是否全部的checkbox都被選了

 

代碼:

<!DOCTYPE html>
<html>
<head lang="en">
  <meta charset="UTF-8">
  <title></title>

</head>
<body>

    <input type="checkbox" id="all"/>全選
    
    <div id="checkbox">
  
        <input type="checkbox"/>選擇一 <br/>
        <input type="checkbox"/>選擇二
     
    </div>

<script>

//獲取全選按鈕
var all = document.getElementById("all");

//獲取div中所有的復選框
var checkboxs = document.getElementById("checkbox").getElementsByTagName("input");

//點擊全選,獲取他當前的狀態並設置新的狀態
all.onclick = function(){

for(var i = 0;i < checkboxs.length; i++){
 
checkboxs[i].checked = this.checked;

}
}


//獲取checkbox所有復選框並注冊點擊事件
for(var i = 0;i < checkboxs.length; i++){

  checkboxs[i].onclick = function(){

  //設置默認全部選中
  var flag = true;

  //判斷是否所有的復選框都選中
  for(var j = 0;j < checkboxs.length; j++){

  if(!checkboxs[j].checked){//如果有一個不被選中
  
    flag = false; //則取消全選

    break;

  }
  }

    all.checked = flag; //取消全選

}
}

</script>

</body>

</html>

 

實現這個功能還有太多的方法了。這個只是其中的一個。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM