在一个页面上有多个 HTML 表单,其输入字段共享相同的名称属性,这是一种可接受的做法吗?例如,该页面包含所有球员的列表,并且允许用户投票选出最佳球员,因此在每张球员卡片旁边都有此表格:
<form class="vote-for-player" enctype="application/x-www-form-urlencoded" method="post" action="/index/vote-for-best-player">
<input type="hidden" name="player_id" value="1" />
<input type="submit" name="vote_for_player" value="Vote" class="input-submit" />
</form>
当然,每个表单的隐藏输入字段的值属性是不同的。
假设页面上有 20 个这样的表单,这意味着 20 个输入字段的名称等于“player_id”。如果我通过 HTML 验证器传递该页面,即使使用 XHTML 1.0 Strict 文档类型,它也是有效的。但从网络标准或可访问性的角度来看,这是一种可以接受的做法吗?
有一件事我可以肯定,它使页面的服务器端处理更容易,因为我只需要从一个名为 player_id 的 POST 字段加载值。
最佳答案
同意楼上的回答。名称完全可以,并将作为表单的响应参数传递。如果您的输入元素也具有相同的 ID,则情况会有所不同 - 某些浏览器可能无法遍历文档的 dom。
再次,想想一堆单选按钮,用户可以在其中选择性别等。它们必须具有相同的名称(但不同的 ID)...
关于html - 具有相同名称属性的输入字段的多个表单?是好是坏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2292384/