木筱茵ぅ相濡以沫
2016-04-12 19:03
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;
}
}
// 任务3
}
这是哪里错了 我找不到错误
你没有定义hobby是什么啊,每个函数都要重新定义一下hoby,所以加上这句var hobby = document.getElementsByName("hobby");,但是这样序号是错开的,你填3,它会把第四个选上,因为记数是从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;
}
}
然后其实循环也是多余的,直接这样就行:
function checkone(){
var j=document.getElementById("wb").value;
var hobby = document.getElementsByName("hobby");
hobby[j-1].checked = true;
}
JavaScript进阶篇
468194 学习 · 21891 问题
相似问题