我偶然发现了一个我不知道如何解决的问题。我希望能够检查单选按钮被选中的时间。如果五个按钮之一被选中,它应该给出反馈。用我的代码以某种方式,当我检查第一个单选按钮时,它可以工作。但是,如果我检查第二或第三...它给了我警报消息:请给一个评价。因此,这意味着要么函数radioChecker中的for循环未按预期运行,要么我不知道。
No EJB receiver available for handling [appName:signserver, moduleName:SignServer-ejb, distinctName:]
}
答案 0 :(得分:2)
这是因为循环中有一个return true
。在第一个循环上返回true的那一刻,它将中断循环。
答案 1 :(得分:1)
const radioChecker = () => {
let radios = document.querySelector(".stars").querySelectorAll("input");
for (let i = 0; i <radios.length; i++) {
if (radios[i].checked) {
console.log("yes");
return true;
}
}
return false;
}
说明:
因此,for循环检查所有radios
。如果选中了任何广播,它将立即return true
。
运行完整循环后,如果未找到任何无线电,将进行return false
。