HTML 表单复选框未按预期提交

标签 html ruby-on-rails forms checkbox

[解决方案:通过将“[]”连接到末尾来将我的名字更改为数组。此外,将我的 ID 更改为唯一值以符合 HTML 规范]

我正在创建一个表单,它有一个复选框矩阵(html 表),每行一个用户,以及用户对列的权限。每个单元格都有一个复选框。一行中的每个复选框都将“名称”设置为用户的电子邮件地址(唯一)。复选框的值是特定权限的 ID。当我单击提交按钮并检查我从 HTTP POST 返回的参数时,只有最右边的复选框被设置为选中了多个复选框的行。

例如,有三个复选框,第一个和第二个选中,第三个未选中。我只取回第二个复选框的 name=id。

我在 Rails 中构建表单,尽管我认为这与实际无关。此外,提供此行为的浏览器是 Chrome、Iceweasel 和 Epiphany...所以我认为这是我的形式。

我的表格摘录:

<tr>
                <td>UserOne</td>
                <td>one@oreo.com</td>
                <td>
                        <input checked="checked" id="one_oreo.com" name="one@oreo.com" type="checkbox" value="1" />
                </td>
                <td>
                        <input id="one_oreo.com" name="one@oreo.com" type="checkbox" value="2" />
                </td>
                <td>
                        <input id="one_oreo.com" name="one@oreo.com" type="checkbox" value="3" />
                </td>
                <td>
                        <input checked="checked" id="one_oreo.com" name="one@oreo.com" type="checkbox" value="4" />
                </td>
                <td>
                        <input id="one_oreo.com" name="one@oreo.com" type="checkbox" value="5" />
                </td>
                <td>
                        <input id="one_oreo.com" name="one@oreo.com" type="checkbox" value="6" />
                </td>
            </tr>

最佳答案

您已将所有这些上的 name=""设置为相同的东西,因此当您勾选多个复选框时,它将替换原来存在的任何值。

要么给每个复选框一个不同的名称,例如name="one@oreo.com_check_1" 或使用 name="one@oreo.com[]" 将它们转换为数组 然后这将存储传递给的所有值它在一个数组中,您可以在提交表单后对其进行处理!

关于HTML 表单复选框未按预期提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9746450/

相关文章:

html - 当父元素具有固定大小时,overflow auto 在子元素中不起作用

ruby-on-rails - 在environment.rb中的config.gem调用中 `lib`是什么意思

javascript - 按键事件后获取表单字段的值

ruby-on-rails - ":nothing"选项已弃用,并将在 Rails 5.1 中删除

python - django 表单字段未显示在模板中 - 为什么?

javascript - 为什么当我填写最后一个输入时我的表单会验证,即使其他所有输入都是空的?

html - #thing1 :hover #thing2 {} not working?

javascript - 如何在javascript中按值删除/隐藏动态单选按钮

PHP 无法从数据库获取结果

html - 如何在 rails 4 中将部分表单呈现为水平表单