当所有input标签所有的name属性都不一样时,不能批量选择,可以使用document.getElementsByTagName("input")。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title> New Document </title> <script type="text/javascript"> //全选和全不选 function chkAll(){ var all = document.getElementById("checkall"); //1.若name值相同且全为name="book" //var checkElements = document.getElementsByName("book"); //2.若name值不同 var checkElements = document.getElementsByTagName("input"); if(all.checked==true){ if(checkElements.length){ for(var i=0;i<checkElements.length;i++){ checkElements[i].checked = true; } } checkElements.chcked=true; }else{ if(checkElements.length){ for(var i=0;i<checkElements.length;i++){ checkElements[i].checked = false; } } } } </script> </head> <body> <input type="checkbox" name="checkall" id="checkall" value="全选" onclick="chkAll()"/> <input name="book1" type="checkbox" value="Java"/>Java <input name="book2" type="checkbox" value="oracle"/>oracle <input name="book3" type="checkbox" value="Hadoop"/>Hadoop </body> </html>