javascript - 检查是否选中了组的任何单选按钮
问题描述
我正在使用这个 JS 代码来检查每行是否有任何单选按钮被选中。
<script type="text/javascript">
function validate_add_table_1()
{
// maatv
if (document.getElementsByName('maatv').checked = false) {
document.getElementById('maatv_glyp').className = ""; }
else {
document.getElementById('maatv_glyp').className = "glyphicon glyphicon-ok"; }
// lassen
if (document.getElementsByName('lassen').checked = false) {
document.getElementById('lassen_glyp').className = ""; }
else {
document.getElementById('lassen_glyp').className = "glyphicon glyphicon-ok"; }
}
</script>
出于某种原因,当我选择第一行时,JS 也在为第二行设置 OK 标志。
有什么建议么?
<tr>
<td align="right"><?php echo $lang['maatv']; ?>:</td>
<td align="center"><input onchange="validate_add_table_1()" type="radio" name="maatv" value="uitstekend"></td>
<td align="center"><input onchange="validate_add_table_1()" type="radio" name="maatv" value="goed"></td>
<td align="center"><input onchange="validate_add_table_1()" type="radio" name="maatv" value="voldoende"></td>
<td align="center"><input onchange="validate_add_table_1()" type="radio" name="maatv" value="matig"></td>
<td align="center"><input onchange="validate_add_table_1()" type="radio" name="maatv" value="slecht"></td>
<td align="center"><input onchange="validate_add_table_1()" type="radio" name="maatv" value="nvt"></td>
<td align="center"><span id="maatv_glyp" class="" style="color:green"></span></td>
</tr>
<tr>
<td align="right"><?php echo $lang['lassen']; ?>:</td>
<td align="center"><input onchange="validate_add_table_1()" type="radio" name="lassen" value="uitstekend"></td>
<td align="center"><input onchange="validate_add_table_1()" type="radio" name="lassen" value="goed"></td>
<td align="center"><input onchange="validate_add_table_1()" type="radio" name="lassen" value="voldoende"></td>
<td align="center"><input onchange="validate_add_table_1()" type="radio" name="lassen" value="matig"></td>
<td align="center"><input onchange="validate_add_table_1()" type="radio" name="lassen" value="slecht"></td>
<td align="center"><input onchange="validate_add_table_1()" type="radio" name="lassen" value="nvt"></td>
<td align="center"><span id="lassen_glyp" class="" style="color:green"></span></td>
</tr>
解决方案
那是因为你的 if 语句是错误的。
if (document.getElementsByName('lassen').checked == false) {
您需要将其与==进行比较
您正在使用 = 这就是为什么它总是会在两个 if 语句中进入 else 分支。
推荐阅读
- javascript - react-saga-router 频道溢出
- vim - 如何让 vim 只为 `gq` 命令换行 80 个字符?
- javascript - 更改 HighCharts 条形图中数据标签的颜色
- java - 从文件中读取类的对象数组
- python - Python——获取排序列表中元素索引的有效方法,使用多个属性排序
- c - 在内核模块上获得正常运行时间?
- python - python中的圆括号或大括号中不存在逗号上的拆分字符串
- webassembly - 分布式普适计算中的 WebAssembly
- angular - ngSwitch 在评估为 true 时不显示项目
- r - R, rowMeans by Column in data.frame