javascript進階篇9-4
? ? ?<script type="text/javascript">
? ? ? ? function checkall(){
? ? ? ? ? ? var hobby = document.getElementsByTagName("input");
? ? ? ? ? ? for(var i=0;i<hobby.length;i++){
? ? ? ? ? ?if(hobby[i].type=="checkbox"){
? ? ? ? ? ? ? ?hobby[i].checked=true;
? ? ? ? ? ?}
? ? ? ? }?
? ? ? ? ? ?
? ? ? ? }
? ? ? ? function clearall(){
? ? ? ? ? ? var hobby = document.getElementsByName("hobby");
? ? ? ? for(var i=0;i<hobby.length;i++){
? ? ? ? ? ? hobby[i].checked=false;}
? ? ? ? /*這里為什么不能直接hobby.checked=false;而要通過for循環*/
? ? ? ? ? ??
? ? ? ? }
? ? ? ??
? ? ? ? function checkone(){
? ? ? ? ? ? var j=document.getElementById("wb").value;
? ? ? ? ? ? var hobby=document.getElementsByName("hobby");
? ? ? ? ? ? hobby[parseInt(j)-1].checked=true;
? ? ? ? ?
? ? ? ??
? ? ? ? }
? ? ? ??
? ? ? ? </script>
2017-04-04
因為getElementsByName()方法獲取的Name值不是唯一的,可以重復,它所返回的是一個集合(可類比數組來理解),不像getElementById()獲得的是唯一的ID值就用hobby.checked=false這樣的寫法,所以要想實現全不選按鈕,那么要一個一個的置為false(即hobby[i].checked=false;),而要想一個一個的置為false就要遍歷這個集合,所以通過for循環來遍歷。