我有一个带有两个提交按钮的表单。那不是问题。我可以做到这一点。让我们切入正题。这是HTML:
<!-- Assume there's a lot more document here. -->
<form action="place1.html" method="GET">
<input type="submit" value="Go to Place 1!" />
<input type="submit" formaction="place2.html" value="Go to Place 2!" />
</form>
第一个按钮完全按预期工作。第二个按钮很奇怪——它实际上转到place1.html,除非你点击最右边的十个左右的像素——然后它转到place2.html。有谁知道这里发生了什么?我已经在 Google Chrome 和 Internet Explorer 上对其进行了测试。是我的 HTML 吗?浏览器?我的电脑?
更新
好吧,所以我禁用了页面上的 CSS - 这没有任何区别。无论如何,没有任何类型的 CSS 目标输入。根据 Agony 的建议,我还action
从form
标签中删除了该属性,并formaction
为第一个提交按钮添加了一个属性 - 没有骰子。:( 不过,我会保留它,因为它感觉更干净。
这是我的环境。实际上,我在一个表单中包含的两个字段集中包含三个按钮。现在,它可能是 div 上的 CSS。
<form id="server-form" method="post">
<input type="hidden" name="custID" value="@Model.CustomerID" form="server-form" />
<div style="float: left; width: 50%;">
<fieldset>
<legend>Fieldset One</legend>
<!-- Content goes here -->
<p><input type="submit" formaction="/page1.html" value="Go to Page 1" />
<input type="submit" formaction="/page2.html" value="Go to Page 2" /></p>
</fieldset>
</div>
<div style="float: right; width: 50%;">
<fieldset>
<legend>Fieldset Two</legend>
<!-- More and different content goes here -->
<p><input type="submit" formaction="/page3.html" value="Go to Page 3" /></p>
</fieldset>
</div>
为什么我之前不透露这个?我想尽可能地保持这种情况,看看在缩小到我的具体实例之前是否有任何愚蠢的事情是我遗漏的。
如果它有所作为,我也在使用带有 Razor 的 ASP.NET MVC 4,但我认为不应该这样做。