亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

怎么不行啊

<!DOCTYPE HTML>

<html>

? ? <head>

? ? ? ? <meta http-equiv="Content-Type" content="text/html; charset=gb2312">

? ? ? ? <title>無標題文檔</title>

? ? </head>

? ??

? ? <body>

? ? ? ? <form>

? ? ? ? ? 請選擇你愛好:<br>

? ? ? ? ? <input type="checkbox" name="hobby" id="hobby1"> ?音樂

? ? ? ? ? <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>請輸入您要選擇愛好的序號,序號為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;

? ? ? ? ? ? ? ? }

? ? ? ? ? ? }

? ? ? ? ? // 任務1?

? ? ? ? }

? ? ? ? function clearall(){

? ? ? ? ? ? var hobby = document.getElementsByName("hobby");

? ? ? ? ? ? for(var i=0,i<hobby.length,i++){

? ? ? ? ? ? ? ? hobby.checked=false;

? ? ? ? ? ? }

? ? ? ? ?// 任務2 ? ?

? ? ? ? }

? ? ? ? function checkone(){

? ? ? ? ? ? var j=document.getElementById("wb").value;

? ? ? ? ? ? var hobby=document.getElemntById('hobby'+j);

? ? ? ? ? ? hobby.cheched=true;

? ? ? ? ?// 任務3

? ? ? ??

? ? ? ? }

? ? ? ??

? ? ? ? </script>

? ? </body>

</html>


正在回答

2 回答

(2)clearall()函數中hobby.checked=false;這是你寫的任務2里的一段代碼。這段代碼的對象你寫的是hobby這個數組。改寫成hobby[i].checked=false;,操作hobby數組中的一個對象,你不要心急,雖然是一個對象,但是配合for(var i=0,i<hobby.length,i++){}這段語句,可以把hobby數組中所以對象都操作一遍。要用這種方法吧false給數組中的對象,不能直接把false給數組,因為數組沒有check這個屬性,check屬性是input元素的,即hobby數組里的input對象

0 回復 有任何疑惑可以回復我~

有四處錯誤

(1)for(;;)這才是正確語法

(2)clearall()函數中hobby.checked=false;,是要操作數組中的某個數,而不是整個數組對象

(3)checkone()函數中有2處拼寫錯誤

(4)checkall()中if(hobby[i].type='checkbox'),這里應該是判斷兩個變量是否相等,而不是賦值。如果是賦值的話你會發現當你點擊‘全選’,會導致所有input元素都變成一個勾選框。

你自己檢查下吧。我有的沒有說太清楚,如果你還沒檢查出來,回復下我我就講清楚。細心真的很重要。我也經常漏細節。加油

0 回復 有任何疑惑可以回復我~
#1

qq_兜里有米_04383258 提問者

第(2)我不太明白,能不能講清楚點。非常感謝?。。。。?!
2017-03-15 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
JavaScript進階篇
  • 參與學習       468835    人
  • 解答問題       22582    個

本課程從如何插入JS代碼開始,帶您進入網頁動態交互世界

進入課程

怎么不行啊

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號