【问题标题】:Having two submit buttons and knowing which one is clicked [duplicate]有两个提交按钮并知道点击了哪个[重复]
【发布时间】:2016-07-21 11:52:13
【问题描述】:

在我以@Html.BeginForm 开头的 MVC 表单中,我放置了两个提交按钮:

<div>
    <input id="submitButton" type="submit" value="Register" />
    <input type="hidden" name="btn" value="register" />
</div>

<div>
    <input id="cancelButton" type="submit" value="Cancel" />
    <input type="hidden" name="btn" value="cancel" />
</div>

但在我的操作方法中,输入的值仍然是从第一个按钮“注册”,即使我点击了取消按钮。

我该如何解决这个问题?

【问题讨论】:

  • 给每一个相同的name 属性,并将其作为参数放入您的ActionResult 方法中。然后您可以检查该值。

标签: c# asp.net-mvc razor


【解决方案1】:

隐藏字段与按钮无关,但无论您单击哪个提交按钮,它们的值都是您收到的。

删除隐藏字段,并为每个按钮添加name="btn" 属性。您在btn 中收到的值将是所按下按钮的值(以及确切的文本)。

例子:

<div>
    <input id="submitButton" type="submit" name="btn" value="Register" />
</div>

<div>
    <input id="cancelButton" type="submit" name="btn" value="Cancel" />
</div>

【讨论】:

  • 给出两个按钮的名称并从表单中获取这些按钮的值。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-11-17
  • 1970-01-01
  • 1970-01-01
  • 2014-08-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多