[英]how to pass Html.HiddenFor from view to view and controller mvc
我正在尝试从页面传递 id 以提交表单,但似乎没有运气。
@model IList<MySiteCom.ViewModels.ReviewViewModel>
@for (int i = 0; i < Model.Count(); i++)
{
@Html.HiddenFor((x => x[i].ReviewId))
@Html.ActionLink("comment", "AddComent", new { id = @Html.DisplayFor(x => x[i].ReviewId) })
}
第2页
@model MySiteCom.Models.Comments
@Html.HiddenFor(a => a.review.ReviewId)
@using (Html.BeginForm())
您可以将隐藏字段值从一个视图传递给控制器,然后借助 TempData、ViewBag 或 ViewData 等将值从控制器传递给另一个视图。您可以直接通过模型的属性名称使用 HiddenFor,如下所示:
视图一:
@model IList<MySiteCom.ViewModels.ReviewViewModel>
@foreach (var review in Model)
{
<input type="hidden" name="ReviewId" value=review.ReviewId />
@Html.ActionLink("comment", "AddComent", new { id = review.ReviewId })
}
控制器:
public ActionResult AddComment([Bind(Exclude = null)] ReviewViewModel review)
{
//...
TempData["revId"] = review.ReviewId;
{
视图二:
var value = @TempData["revId"]
有关 ViewBag、ViewData 或 TempData 之间的差异,您可以查看何时在 ASP.NET MVC 3 应用程序中使用 ViewBag、ViewData 或 TempData 。 希望这可以帮助...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.