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

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

任務3的代碼不理解,求詳細解答,3q

<!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++){

? ? ? ? ? ? ? ? hobby[i].checked=true;

? ? ? ? ? ? ? ??

? ? ? ? ? ? }

? ? ? ? ? // 任務1?

? ? ? ? ? ?

? ? ? ? }

? ? ? ? function clearall(){

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

? ? ? ? ? ? //alert(hobby.length);

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

? ? ? ? ? ? ? ? hobby[i].checked=false;

? ? ? ? ? ? }

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

? ? ? ? ? ??

? ? ? ? }

? ? ? ??

? ? ? ? function checkone(){

? ? ? ? ? ? clearall();

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

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

? ? ? ? ? ? for(var i=0;i<j.length;i++){

? ? ? ? ? ? ? ? if(j.charAt(i)>6 || j.charAt(i)<1){

? ? ? ? ? ? ? ? ? ? alert("越界,請重新輸入!");

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

? ? ? ? ? ? ? ? }

? ? ? ? ? ? }

? ? ? ? ? ? ? ? for(var n=0;n<j.length;n++){

? ? ? ? ? ? ? ? ? ?

? ? ? ? ? ? ? ? ? ? ? ? hobby[(j.charAt(n))-1].checked=true;?

? ? ? ? ? ? ? ? }


? ? ? ? ? ??

? ? ? ? ? ??

? ? ? ? }

? ? ? ??

? ? ? ? </script>

? ? </body>

</html>


正在回答

2 回答

? ? ? ? function checkone(){

? ? ? ? ? ? clearall(); //把所有清空了

? ? ? ? ? ? var hobby = document.getElementsByName("hobby"); //得到數組hobby

? ? ? ? ? ? var j=document.getElementById("wb").value; //得到框里面內容,為了方便解釋,假設為“123”

? ? ? ? ? ? for(var i=0;i<j.length;i++){ ?//“123”的長度為三,循環三次

? ? ? ? ? ? ? ? if(j.charAt(i)>6 || j.charAt(i)<1){ ?//檢查“123”里面有沒有一個數字是大于6或小于1的,例如j.chatAt(0)>6就是判斷第一個字符值大于6 (1>6?)

? ? ? ? ? ? ? ? ? ? alert("越界,請重新輸入!"); ? //輸出錯誤

? ? ? ? ? ? ? ? ? ? document.getElementById("wb").value=""; //將j的值置空

? ? ? ? ? ? ? ? }

? ? ? ? ? ? }

? ? ? ? ? ? ? ? for(var n=0;n<j.length;n++){ //假如上面j置空了,j.length為0,此循環不執行,現在沒置空所以執行三次

? ? ? ? ?hobby[(j.charAt(n))-1].checked=true; ?//數組從零開始,所以第一個等于hobby[0],所以要減一?

}

}

執行效果如下:

hobby[0].checked=true

hobby[1].checked=true

hobby[2].checked=true ?

目的達成


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

kx00012kx

document.getElementById("wb").value=""; //將j的值置空 置空是什么意思啊
2016-07-26 回復 有任何疑惑可以回復我~
#2

Youruncle 提問者

非常感謝!
2016-07-27 回復 有任何疑惑可以回復我~

就是沒有值。道理就像“123”比作 盤子里有三個蘋果,那么j.length就是問你盤子里有幾個蘋果,document.getElementById("wb").value=""; 就是把蘋果全拿走,只剩盤子了

?

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

舉報

0/150
提交
取消

任務3的代碼不理解,求詳細解答,3q

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

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

幫助反饋 APP下載

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

公眾號

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