請教不知道哪里錯了
?function checkone(){
??????????? var j=document.getElementById("wb").value;
??????????? /*var w=document.getElementById("hobby"+j);
??????????? w.checked=true;
??????????????? */
??????????? for(var i=0;i<hobby.length;i++)
??????????? {
??????????????? if(i==j)
??????????????? {
??????????????????? hobby[j].checked=true;
??????????????? }
??????????? }
???????? // 任務(wù)3
?????? ?
??????? }
這是哪里錯了 我找不到錯誤
2016-04-12
你沒有定義hobby是什么啊,每個函數(shù)都要重新定義一下hoby,所以加上這句var hobby = document.getElementsByName("hobby");,但是這樣序號是錯開的,你填3,它會把第四個選上,因為記數(shù)是從0開始的,所以改成這樣:
function checkone(){
? ? ? ? ? ? var j=document.getElementById("wb").value;
? ? ? ? ? ? var hobby = document.getElementsByName("hobby");
? ? ? ? ? ? for(var i=0;i<hobby.length;i++)
? ? ? ? ? ? {
? ? ? ? ? ? ? ? if(i==j)
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? hobby[j-1].checked=true;
? ? ? ? ? ? ? ? }
? ? ? ? ? ? }
然后其實循環(huán)也是多余的,直接這樣就行:
function checkone(){
? ? ? ? ? ? var j=document.getElementById("wb").value;
? ? ? ? ?
? ? ? ? ? ? var hobby = document.getElementsByName("hobby");
? ? ? ? ? ??
? ? ? ? ? ? hobby[j-1].checked = true;
? ? ? ? }