首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >复选框矩阵-一行只允许1

复选框矩阵-一行只允许1
EN

Code Review用户
提问于 2013-12-19 00:47:04
回答 1查看 641关注 0票数 1

任务

创建一个复选框矩阵。用户必须能够只选中一行中的一个复选框或取消选择所有复选框。

溶液

代码语言:javascript
复制
<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" >
    <script type="text/javascript">
      function switch_checkbox(id_selected, id_pair)
      {
           //if the current checkbox is checked - uncheck the 2-nd checkbox in this row
          if(document.getElementById(id_selected).checked == true)
          {
              document.getElementById(id_pair).checked = false;
          }
      }
    </script>
  </head>
  <body>
    <form method="post" id="" action="send.php">
      <input type="checkbox" name="group1[]" id="1-1" value="1-1" onChange="switch_checkbox('1-1', '1-2');"/>
      <input type="checkbox" name="group2[]" id="1-2" value="1-2" onChange="switch_checkbox('1-2', '1-1');"/>
      <br />
      <input type="checkbox" name="group1[]" id="2-1" value="2-1" onChange="switch_checkbox('2-1', '2-2');"/>
      <input type="checkbox" name="group2[]" id="2-2" value="2-2" onChange="switch_checkbox('2-2', '2-1');"/>
    </form>
  </body>
</html>

正如你所看到的,这个解决方案非常原始。还能让它变得更简单吗?

EN

回答 1

Code Review用户

回答已采纳

发布于 2013-12-19 03:06:38

假设一个未检查的启动条件,您可以消除一个参数,从而删除该条件:

代码语言:javascript
复制
function switch_checkbox(id_pair)
{
    document.getElementById(id_pair).checked = false;
}

..。

代码语言:javascript
复制
<input type="checkbox" name="group1[]" id="1-1" value="1-1" onChange="switch_checkbox('1-2');"/>
票数 1
EN
页面原文内容由Code Review提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://codereview.stackexchange.com/questions/37708

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档