閒話少說,直接上案例:html
htmlvue
<input type="checkbox" id="qx"> 全選/反選<br> <div id="ip"> <input type="checkbox">JavaScript <input type="checkbox">NodeJS <input type="checkbox">vue <input type="checkbox">react <input type="checkbox">angular </div>
解題思路:react
首先須要找到他們的id
其次需知道div中有多少個子元素
而後用函數 解決點擊事件
最後運用判斷套循環語句web
jssvg
<script> var qx1 = document.getElementById('qx'); var ip1 = document.getElementById('ip'); var len = ip1.children.length;//div中子元素的個數 qx1.onclick = function () { if (qx1.checked == true) { for (var i = 0; i < len; i++) { ip1.children[i].checked = true; } } else { for (var i = 0; i < len; i++) { ip1.children[i].checked = false; } } } </script>
(注意:此模式只解決複選框點擊一次全選,再點擊一次取消的問題,可是會出現全選後,點擊子元素取消選中,全選不會取消選擇的BUG);函數