0

我有两个使用相同名称的字段。当使用 Google Chrome 将这两个输入字段发布到 ASP.NET MVC 控制器时,最靠近页面顶部的输入字段优先。这是一种理想的行为,但我可以安全地假设这种行为与 IE6 一样旧的旧浏览器是一致的吗?

4

3 回答 3

2

拥有多个同名字段没问题。无论浏览器版本如何,它们都会被发布。

于 2012-08-14T15:50:55.023 回答
2

您可以有多个具有相同名称的字段,但是是的,因为您注意到第一个字段将覆盖其他字段(您可能能够读取它们,具体取决于您的服务器软件,我不知道 ASP.NET)。

如果需要,您可以添加[]名称以使其成为数组。

<input name="test[]" />
<input name="test[]" />

我不了解 ASP.NET,但在 PHP$_POST['input']中现在将是一个数组。

于 2012-08-14T15:51:32.317 回答
1

是也不是,这可能很好,但可能会导致问题。

从淘汰手册(链接):

  • 其他技术可能依赖于某些元素具有名称的假设,即使在您使用 KO 时名称可能无关紧要。例如,jQuery Validation 目前只会验证有名字的元素。要将其与 Knockout UI 一起使用,有时需要应用 uniqueName 绑定以避免混淆 jQuery Validation。查看一个使用 KO 的 jQuery Validation 的示例。

  • 如果单选按钮没有名称属性,IE 6 不允许检查它们。大多数情况下,这无关紧要,因为您的单选按钮元素将具有名称属性以将它们放入互斥组中。但是,以防万一您没有添加 name 属性,因为它在您的情况下是不必要的,KO 将在内部对这些元素使用 uniqueName 以确保可以检查它们。

于 2012-08-14T15:59:25.950 回答