<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> <style type="text/css"> </style> </head> <body> <input type="checkbox" id="checkall" onclick="checkAll()"><lable for="checkall">全选</lable> <hr> <input type="checkbox" name="item[]">选项1<br> <input type="checkbox" name="item[]">选项2<br> <input type="checkbox" name="item[]">选项3<br> <input type="checkbox" name="item[]">选项4<br> <input type="checkbox" name="item[]">选项5<br> <input type="checkbox" name="item[]">选项6<br> <input type="checkbox" name="item[]">选项7<br> <input type="checkbox" name="item[]">选项8<br> <input type="checkbox" name="item[]">选项9<br> <input type="checkbox" name="item[]">选项10<br> <br> <p>分别使用for循环,while循环,do while循环做了全选的案例,都可以实现效果,那么这三种循环语句是否可以互相替代通用呢?</p> <script type="text/javascript"> /* function checkAll(){ var checkall , item; checkall = document.getElementById('checkall'); item = document.getElementsByName('item[]'); for(var i = 0; i<item.length; i++){ if(checkall.checked){ item[i].checked = true; }else{ item[i].checked = false; } } } */ /* function checkAll(){ var checkall , item; checkall = document.getElementById('checkall'); item = document.getElementsByName('item[]'); var i=0; while(i<=item.length){ if(checkall.checked){ item[i].checked = true; }else{ item[i].checked = false; } i++; } } */ function checkAll(){ var checkall , item; checkall = document.getElementById('checkall'); item = document.getElementsByName('item[]'); var i=0; do{ if(checkall.checked){ item[i].checked = true; }else{ item[i].checked = false; } i++ }while(i<=item.length); } </script> </body> </html>