【问题标题】:Multiple Radio Button Groups With Same Name具有相同名称的多个单选按钮组
【发布时间】:2015-08-27 19:09:02
【问题描述】:

我收到了一个动态创建 HTML 的复杂应用程序。

问题是,前面的人不知道单选按钮的“名称”属性实际上是组关联。

加上下面的标记,有没有办法把它们分成两组

<div>
  <%-- would like this to be a seperate group without changing name--%>
  <label class="radio-inline"><input type="radio" name="radio" value="1">Group 1 Option 1</label>
  <label class="radio-inline"><input type="radio" name="radio" value="2">Group 1 Option 2</label>
  <label class="radio-inline"><input type="radio" name="radio" value="3">Group 1 Option 3</label>
</div>

<div>
  <%-- would like this to be a seperate group without changing name--%>
  <label class="radio-inline"><input type="radio" name="radio" value="1">Group 2 Option 1</label>
  <label class="radio-inline"><input type="radio" name="radio" value="2">Group 2 Option 2</label>
  <label class="radio-inline"><input type="radio" name="radio" value="3">Group 2 Option 3</label>
</div>

是否有任何 div 或任何我可以环绕它们来分隔分组的东西?我试过字段集和图例,但没有效果。我知道我可以将每一个都放在一个表单中,但不会全部提交。

【问题讨论】:

  • 您需要为每组单选按钮指定不同的名称。
  • @Rick Hitchcock 这是我唯一的选择吗?
  • 是的,假设您希望能够检查每个分组中的项目。

标签: javascript html radio-button


【解决方案1】:

将它们放在不同的表单标签中

<form>
  <label class="radio-inline"><input type="radio" name="radio" value="1">Group 1 Option 1</label>
  <label class="radio-inline"><input type="radio" name="radio" value="2">Group 1 Option 2</label>
  <label class="radio-inline"><input type="radio" name="radio" value="3">Group 1 Option 3</label>
</form>

<form>
  <label class="radio-inline"><input type="radio" name="radio" value="1">Group 2 Option 1</label>
  <label class="radio-inline"><input type="radio" name="radio" value="2">Group 2 Option 2</label>
  <label class="radio-inline"><input type="radio" name="radio" value="3">Group 2 Option 3</label>
</form>

【讨论】:

  • 我不确定你为什么不能使用数组关联,比如 name="radio[]" ?
  • 我不明白你的意思。
  • 如果用label for="..." 包裹你的收音机,这可能不起作用。
  • label for="..."需要设置diff id。
【解决方案2】:

据我所知,你不能。单选按钮的名称定义了它所在的组,然后在提交表单的处理程序中,您调用名称以获取所选选项。使用行分隔符或 div 不会将它们彼此分离。您只能为选定的组选择一个单选按钮。如果您只希望它们在视觉上分开,奥斯汀有正确的想法。

更改每个组的名称是允许 2 个选定按钮的唯一选项。

【讨论】:

    【解决方案3】:

    我想你想使用&lt;fieldset&gt;,这将允许你在同一个表单中分隔它们。

    示例:https://jsfiddle.net/ndn7jmh5/2/

    如果您不能这样做,请尝试使用&lt;br/&gt; 将它们分隔到不同的行。

    【讨论】:

    • 两个组仍然像一个大组一样。
    • @clamchoda 如果您希望能够从每个组中勾选一个选项,您需要更改名称。否则,您将在同一个帖子中提交两个值。它只是行不通。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-20
    相关资源
    最近更新 更多