具有唯一ID的多个提交按钮

时间:2012-06-03 16:58:09

标签: asp.net-mvc-3

在我的应用程序中,我正在尝试创建一个包含一些文本字段和一组附件的表单。用户可以从数据库加载现有表单,编辑字段,还可以从附件集合中添加/删除单个附件。

为此目的,在我的视图中,我有一个foreach循环,用于呈现附件详细信息(id,name)和提交按钮以删除附件。表单底部还有一个主提交按钮,用户在完成表单编辑后可以单击该按钮。

我已按照this solution在我的表单中实现了多个提交按钮。但是我遇到的问题是当用户想要删除附件时,当用户单击附件旁边的提交按钮时,我需要将附件ID作为参数传递给“RemoveAttachment”操作。但实际上,应用程序将主表单ID传递给RemoveAttachment操作。有没有办法在用户点击按钮时传递附件ID?

非常感谢

2 个答案:

答案 0 :(得分:1)

使用一点点javascript,首先在表单中添加一个隐藏字段:

<input type="hidden" name="attachmentID" id="attachmentID">

然后,在每个提交按钮上:

<input type="submit" onclick="document.getElementById('attachmentID').value='@ATTACHMENT_ID'" />

当然,您将ATTACHMENT_ID替换为包含id的任何变量。

答案 1 :(得分:0)

您可以为每个删除按钮单独<form>,并使用指定ID的隐藏输入(或URL参数)。

请注意<form> s不能嵌套。