这题第3个函数中,变量j获取的是输入框中的数字,变量hobby这样表示后成什么了?后面括号里怎么可以用”hobby“+j来表示?hobby不是一个数组对象吗?怎么后面直接作为一个数组元素调用了呢?
function checkone(){ var j=document.getElementById("wb").value; var hobby = document.getElementById("hobby"+j); hobby.checked = true; }
我写的答案是下面这样子的,这个我才能理解。
function checkone(){ var j=document.getElementById("wb").value; var hobby = document.getElementsByName("hobby"); hobby[j-1].checked=true; }
前面用的是getElementById,你后面用的是getElementsByName。
”hobby“+j 是字符串拼接,比如j=1时,表示hobby1,是可以取到id为这个的元素。
你用getElementsByName取到元素集合,然后用[j-1]也是一样的可以取到。
所以两者一回事。