javascript - 选中/取消选中单选按钮 JavaScript
问题描述
有人可以帮我解决这个问题吗?当我将 a() 设置为 #j1 并将 b() 设置为 #j2 时,一切正常(单击选中一个单选按钮,另一个未选中),但是当我将两者都设置为 c() 时,它仅在我先点击按钮2,再点击按钮1,然后卡住了。我也尝试过循环,但我想它的逻辑存在固有的错误。
提前致谢。丹尼尔
<body>
<input type="radio" id="j1" onclick="c()"><label for="j1">1</label>
<input type="radio" id="j2" onclick="c()"><label for="j2">2</label>
<script>
const j1 = document.querySelector("#j1");
const j2 = document.querySelector("#j2");
function a(){
j1.checked = true;
j2.checked = false;
}
function b(){
j1.checked = false;
j2.checked = true;
}
function c(){
if(j1.checked===true){
j2.checked=false;
}
else if(j2.checked===true){
j1.checked=false;
}
}
</script>
</body>
解决方案
您似乎正在尝试复制默认的单选按钮行为。在您的 s 上设置一个name="foo"
属性<input>
,它们将为您形成一个仅选择一个组。
推荐阅读
- javascript - Firebase - snapshot.val() 返回 null - 为什么它无法连接到正确的集合?
- c++ - 为什么基于 OpenMP 的 Jacobi Stencil 程序比顺序版本慢
- c# - 如何在 Visual Studio 2017 的同一解决方案中使用来自其他项目的相同数据连接?
- google-apps-script - 使用 google app 脚本在文档中嵌入工作表范围
- javascript - 插入数据取决于输入日期
- java - Java多客户端游戏服务器
- r - R Shiny - 在服务器加载时加载 csv 文件
- java - GWT - CellTable 可排序列不会响应点击
- apache-spark - 从多个 parquet 路径创建 Spark SQL 表
- swift - 以 UTC 格式获取当前本地时间并设置为二元运算符,例如 >= 或 <