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