Html 多个表单的输入字段具有相同的名称属性?好还是坏?

Html 多个表单的输入字段具有相同的名称属性?好还是坏?,html,xhtml,accessibility,web-standards,Html,Xhtml,Accessibility,Web Standards,在一个页面上有多个HTML表单,并且输入字段共享相同的名称属性,这是一种可接受的做法吗?例如,该页面包含所有玩家的列表,允许用户投票选出最佳玩家,因此在每张玩家卡旁边有以下表格: <form class="vote-for-player" enctype="application/x-www-form-urlencoded" method="post" action="/index/vote-for-best-player"> <input type="hidden"

在一个页面上有多个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验证程序传递该页面,即使使用XHTML1.0严格的doctype,它也是有效的。但从web标准或可访问性的角度来看,这是一种可接受的做法吗


有一件事我可以肯定,它使服务器端处理页面变得更容易,因为我只需要从一个名为player_id的POST字段中加载值。

是的,它是有效的,我一直都这样做。

同意上述答案。名称完全正确,将作为表单的响应参数传递。如果您的输入元素也具有相同的id,情况就不同了——一些浏览器可能在遍历文档的dom时遇到问题


再一次,想想一堆单选按钮,用户可以在其中选择性别等。他们必须有相同的名字(但不同的id)。

是的,这很好。。事实上,我个人认为这样做确实是一个很好的实践,因为与一堆名称相比,开发人员使用相对较少的名称变得相对方便。。此外,当元素位于不同的表单上时,它不会以任何方式导致名称空间冲突,因为在js中通过名称标识元素时,我们使用表单名称和输入字段名称,因此不会导致任何问题…

关于重复ID:和