怎么不行啊
<!DOCTYPE HTML>
<html>
? ? <head>
? ? ? ? <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
? ? ? ? <title>無(wú)標(biāo)題文檔</title>
? ? </head>
? ??
? ? <body>
? ? ? ? <form>
? ? ? ? ? 請(qǐng)選擇你愛好:<br>
? ? ? ? ? <input type="checkbox" name="hobby" id="hobby1"> ?音樂(lè)
? ? ? ? ? <input type="checkbox" name="hobby" id="hobby2"> ?登山
? ? ? ? ? <input type="checkbox" name="hobby" id="hobby3"> ?游泳
? ? ? ? ? <input type="checkbox" name="hobby" id="hobby4"> ?閱讀
? ? ? ? ? <input type="checkbox" name="hobby" id="hobby5"> ?打球
? ? ? ? ? <input type="checkbox" name="hobby" id="hobby6"> ?跑步 <br>
? ? ? ? ? <input type="button" value = "全選" onclick = "checkall();">
? ? ? ? ? <input type="button" value = "全不選" onclick = "clearall();">
? ? ? ? ? <p>請(qǐng)輸入您要選擇愛好的序號(hào),序號(hào)為1-6:</p>
? ? ? ? ? <input id="wb" name="wb" type="text" >
? ? ? ? ? <input name="ok" type="button" value="確定" onclick = "checkone();">
? ? ? ? </form>
? ? ? ? <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;
? ? ? ? ? ? ? ? }
? ? ? ? ? ? }
? ? ? ? ? // 任務(wù)1?
? ? ? ? }
? ? ? ? function clearall(){
? ? ? ? ? ? var hobby = document.getElementsByName("hobby");
? ? ? ? ? ? for(var i=0,i<hobby.length,i++){
? ? ? ? ? ? ? ? hobby.checked=false;
? ? ? ? ? ? }
? ? ? ? ?// 任務(wù)2 ? ?
? ? ? ? }
? ? ? ? function checkone(){
? ? ? ? ? ? var j=document.getElementById("wb").value;
? ? ? ? ? ? var hobby=document.getElemntById('hobby'+j);
? ? ? ? ? ? hobby.cheched=true;
? ? ? ? ?// 任務(wù)3
? ? ? ??
? ? ? ? }
? ? ? ??
? ? ? ? </script>
? ? </body>
</html>
2017-03-15
(2)clearall()函數(shù)中hobby.checked=false;這是你寫的任務(wù)2里的一段代碼。這段代碼的對(duì)象你寫的是hobby這個(gè)數(shù)組。改寫成hobby[i].checked=false;,操作hobby數(shù)組中的一個(gè)對(duì)象,你不要心急,雖然是一個(gè)對(duì)象,但是配合for(var i=0,i<hobby.length,i++){}這段語(yǔ)句,可以把hobby數(shù)組中所以對(duì)象都操作一遍。要用這種方法吧false給數(shù)組中的對(duì)象,不能直接把false給數(shù)組,因?yàn)閿?shù)組沒(méi)有check這個(gè)屬性,check屬性是input元素的,即hobby數(shù)組里的input對(duì)象
2017-03-13
有四處錯(cuò)誤
(1)for(;;)這才是正確語(yǔ)法
(2)clearall()函數(shù)中hobby.checked=false;,是要操作數(shù)組中的某個(gè)數(shù),而不是整個(gè)數(shù)組對(duì)象
(3)checkone()函數(shù)中有2處拼寫錯(cuò)誤
(4)checkall()中if(hobby[i].type='checkbox'),這里應(yīng)該是判斷兩個(gè)變量是否相等,而不是賦值。如果是賦值的話你會(huì)發(fā)現(xiàn)當(dāng)你點(diǎn)擊‘全選’,會(huì)導(dǎo)致所有input元素都變成一個(gè)勾選框。
你自己檢查下吧。我有的沒(méi)有說(shuō)太清楚,如果你還沒(méi)檢查出來(lái),回復(fù)下我我就講清楚。細(xì)心真的很重要。我也經(jīng)常漏細(xì)節(jié)。加油