function checkone(){ var j=document.getElementById("wb").value; clearall(); var hobby=document.getElementsByName("hobby"); // 任务3 for(var i=0;i<j.length;i++) if(j.charAt(i)>6||j.charAt(i)<1) { alert("请输入1-6"); document.getElementById("wb").value=""; } hobby[(j.charAt(i))-1].checked=true; } for(var n=0;n<j.length;n++) hobby[(j.charAt(n))-1].checked=true; }
function checkone(){ clearall() var hobby=document.getElementsByName("hobby"); var j=document.getElementById("wb").value; for(var i=0;i<j.length;i++){ if(0<j.charAt(i) && j.charAt(i)<7){ hobby[(j.charAt(i))-1].checked=true; } else{ alert("越界,请重新输入!"); document.getElementById("wb").value=""; } } }
这个好使,你的for后面掉了一个 { 括号,
hobby[(j.charAt(i))-1].checked=true; 重复,第二个for可以删除
这里的j已经是一个数了
for(var i=0;i<j.length;i++) if(j.charAt(i)>6||j.charAt(i)<1) { alert("请输入1-6"); document.getElementById("wb").value=""; } hobby[(j.charAt(i))-1].checked=true; }
j.length也就没有意义了,其实这样就可以了
function checkone(){ var j=document.getElementById("wb").value; // 任务3 var hobby = document.getElementById("hobby"+j); hobby.checked = true; }
如果还要判断输入框的值的话,就直接用j和0,6比较就可以了
var j=document.getElementById("wb").value; j的值是NULL吧
j.length有吗????