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

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

求教,一個大括號引發的問題

大括號的位置

一,不可以執行的版本,

? ?? function checkone(){
??????????? var hobby = document.getElementsByName("hobby");
??????????? for(var o=1;o<=hobby.length;o++){
??????????????? hobby[o].checked=false;
?????????? ?
??????????? }
?????? ?
??????????? var u=document.getElementById("wb").value;
?????????? ?
??????????????? hobby[u].checked=true;
?????????? ?
?
??????????? }


二 可以執行的版本

?function checkone(){
??????????? var hobby = document.getElementsByName("hobby");
??????????? for(var o=1;o<=hobby.length;o++){
??????????????? hobby[o].checked=false;
?????????? ?
??????????
?????? ?
??????????? var u=document.getElementById("wb").value;
?????????? ?
??????????????? hobby[u].checked=true;
?????????? ? }
???????
??????????? }



我自己寫的是一,? 清除完再選定。我在哪里出錯了,求教

正在回答

2 回答

function?checkone(){?
????var?hobby?=?document.getElementsByName("hobby");?????????
????for(var?o=0;o<hobby.length;o++){?????????????????//不應該小于等于,直接小于就可以了
????????hobby[o].checked=false;
????}??????
????var?u=document.getElementById("wb").value?-?1;???//數組下標從0開始,所有正常執行時,應該是1(后臺需要處理成0)?????
????hobby[u].checked=true;

這個代碼是你的第一個版本(不可以執行的版本)修改過來,你的邏輯沒問題;

注釋的兩個地方,我已經寫出來:

注釋1:之所以失敗,是因為你用了<=,直接導致后邊的代碼不起作用,也就是執行了循環后就結束了;

注釋2:數組下標從0開始,表面上看 1.音樂 ~ 6.跑步,但實際上后臺數組對應下邊應該是 0.音樂 ~ 5.跑步,獲取值那里必須手動減 1

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

慕圣8408166 提問者

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

function checkone(){
??????????? var hobby = document.getElementsByName("hobby");

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

??????????? for(var o=1;o<=hobby.length;o++){
??????????????? hobby[o].checked=false;
??????????????? hobby[u].checked=true;
?????????? ??}
????????
? ? ? }

寫法不規范,沒有弄清楚哪些該循環,哪些不該

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

舉報

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

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

進入課程

求教,一個大括號引發的問題

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

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

幫助反饋 APP下載

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

公眾號

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