var theRadioInputs = document.getElementsByName('answer');
for(let m=0;m<theRadioInputs.length;m++)
{
if(theRadioInputs[m].checked){
alert('has been checked');
return true;
}else{
alert('您还没有选中其中的一项');
return false;
}
}

怎么解决?为什么总是‘您还没有选中其中的一项‘
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
7条回答 默认 最新
- CSDN专家-文盲老顾 2021-08-06 10:31关注
在判断一组单选或多选是否有选中项,不应该像你这样在循环内判断
应该是在循环外定义一个变量,表示选中或选中项数量
例如
let selectedItems = 0; for(let m=0;m<theRadioInputs.length;m++) { if(theRadioInputs[m].checked){ selectedItems ++; //alert('has been checked'); //return true; // }else{ //alert('您还没有选中其中的一项'); //return false; } } if (selectedItems > 0){ alert('has been checked'); return true; }else{ alert('您还没有选中其中的一项'); return false; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报