我的 ASP.NET MVC 站点上的“消息” View 有一个类似于以下模型(从 Facebook 中截取的图片)的表单。
我希望让“标记为未读”和“删除”功能适用于如下所示的表单。我正在尝试弄清楚如何使用 html 表单执行此操作。
如何让点击“标记为未读”提交到一个表单 url,然后“删除”将相同的表单提交到不同的 url?
如果您点击“标记为未读”,我希望它将表单提交到“/Messages/MarkUnread”,如果它是“删除”按钮,我希望它将表单提交到“/消息/删除”。
我想让它在没有 javascript 的情况下工作,一旦完成,我将添加 jQuery 表单插件,以便在启用 JS 时执行 ajax 提交,否则它将执行正常的表单发布。
最佳答案
我是一个 MVC 新手,但我相信表单只能提交一个 Action 。
就是说,在您要发布的操作中,我知道您将能够分辨出单击了哪个按钮并适本地处理事情,例如:
[AcceptVerbs(HttpVerbs.Post)]
public ViewResult Index(string btnCompose, string btnMarkAsRead, string btnDelete)
{
if (btnCompose != null)
{
// Compose was clicked, handle appropriately
}
else if (btnMarkAsRead != null)
{
// Mark As Read was clicked, handle appropriately
}
else if (btnDelete != null)
{
// Delete was clicked, handle appropriately
}
}
这假定您的 HTML 元素被命名为“btnDelete”等。
关于c# - 如何根据在 ASP.NET MVC 中单击的按钮更改表单提交的操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1976670/