Asp.net mvc 如何在multi-post MVC 4.0上保留模型值
在一个视图中,我有3个这样的提交按钮Asp.net mvc 如何在multi-post MVC 4.0上保留模型值,asp.net-mvc,asp.net-mvc-4,Asp.net Mvc,Asp.net Mvc 4,在一个视图中,我有3个这样的提交按钮 <input type="submit" id="btnUpload" name="button" value="Upload" /> <input type="submit" id="btnDownload" name="button" value="Download" /> <input type="submit" id="btnSave" name="button" value="Save" /> 这些按钮位
<input type="submit" id="btnUpload" name="button" value="Upload" />
<input type="submit" id="btnDownload" name="button" value="Download" />
<input type="submit" id="btnSave" name="button" value="Save" />
这些按钮位于“开始”窗体内
内部控制器
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult BulkRenewalProcess(BusinessViewModel model, List<HttpPostedFileBase> BulkFile, string button)
{
if (button == "Upload")
{
model.PublicId = lstId;
return View(model);
}
else if(button == "Download")
{
// After my business logic I am returning same view.
return View(model);
}
else
{
}
}
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult BulkRenewalProcess(BusinessViewModel模型、列表BulkFile、字符串按钮)
{
如果(按钮==“上传”)
{
model.PublicId=lstId;
返回视图(模型);
}
否则如果(按钮==“下载”)
{
//在我的业务逻辑之后,我返回相同的视图。
返回视图(模型);
}
其他的
{
}
}
当我点击保存按钮时,这是第二次点击并发布同一型号。单击上载按钮时,我没有获取分配值的model.PublicId
有人请帮助我如何获取值如果有多行,并且您在没有完整页面加载的情况下向这些行发布更改,那么多个表单(每个表单都有他们正在保存的项目的隐藏值)就可以做到这一点 另一个选项是在页面表单级别有一个隐藏字段,单击submit javascript会截取并设置隐藏字段值。 以下是拦截提交点击以进行更多工作的示例:
封装所有项目的表单的另一个选项是拥有每个提交链接(假设您的提交按钮是每行的,而不是列表级别的)生成的id烘焙在类似
的内容中。我已完成会话并将列表存储在会话中,解决了我的问题您必须有一个隐藏的
输入标记,其中包含值,以便第二个表单post将其发送给您的控制器。但我们无法将列表存储在隐藏字段中,请告诉我如何在隐藏字段中存储列表您似乎只想存储一个Id而不是列表?这是一个Id列表这取决于您的html更多,共享更多,或者可能是一个小提琴?我将提供一些选项作为答案,希望解决您的具体情况