0

为什么我的循环只检查第一个单选按钮,如果我选择第二个或第三个它不起作用?

function checkit(){
        for(var i=0;i<document.forms[0].test.length;i++){
            if(document.forms[0].test[i].checked === true){
                alert('OK');
                break;
            }else { alert('hmz'); break; }
        }
    }

<form onsubmit="checkit();">
    First: <input type="radio" name="test"><br>
    Second: <input type="radio" name="test"><br>
    Third: <input type="radio" name="test"><br>
    <input type="submit" value="Lets try it!">
</form>

谢谢你的回复。如前所述,我必须休息一下。但比另一个问题发生,每次我按下提交,如果任何框被选中,它会给我 3 个警报框。如何阻止它?

4

1 回答 1

1

因为你使用breakwhich 离开循环。

function checkit() {
    for (var i = 0; i < document.forms[0].test.length; i++) {
        if (document.forms[0].test[i].checked === true) {
            alert('OK');
        } else {
            alert('hmz');
        }
    }
}
于 2013-09-24T08:08:05.910 回答