- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试将表的结果返回给 Controller 以供进一步操作。一旦返回到 Controller ,该值显示为空。在过去,我已经能够使用 @Html.HiddenFor 返回值,但在这种情况下它似乎不起作用。不确定我在这里做错了什么。任何帮助是极大的赞赏。
@model IEnumerable<Project.Models.Item>
@{
ViewBag.Title = "Welcome to The Project";
}
@using (Html.BeginForm("UpdateQuality", "Home", new { ReturnUrl = ViewBag.ReturnUrl }, FormMethod.Post, new { @class = "form-horizontal", role = "form" }))
{
<div class="row">
<div class="form-group">
<table class="table table-bordered">
<tr>
<th>@Html.DisplayNameFor(m => m.Name)</th>
<th>@Html.DisplayNameFor(m => m.SellIn)</th>
<th>@Html.DisplayNameFor(m => m.Quality)</th>
</tr>
@for (int i = 0; i < Model.Count(); i++)
{
<tr>
<td>@Html.DisplayFor(m => m.ElementAt(i).Name)</td>
<td>@Html.DisplayFor(m => m.ElementAt(i).SellIn)</td>
<td>@Html.DisplayFor(m => m.ElementAt(i).Quality)</td>
@Html.HiddenFor(m => m.ElementAt(i).Name)
@Html.HiddenFor(m => m.ElementAt(i).SellIn)
@Html.HiddenFor(m => m.ElementAt(i).Quality)
</tr>
}
</table>
<div class="form-group">
<div style="margin-top: 50px">
<input type="submit" class="btn btn-primary" value="Advance Day"/>
</div>
</div>
</div>
</div>
}
这是返回 null 的 Controller 。
public ActionResult UpdateQuality(List<Item> Items )
{
return View("Index", (object)Items);
}
最佳答案
您不能使用 ElementAt()
在HtmlHelper
生成表单控件的方法(查看您生成的 name
属性 - 它与您的模型不匹配)。
要么将模型更改为 IList<T>
@model List<Project.Models.Item>
并使用 for
循环
@for (int i = 0; i < Model.Count; i++)
{
....
@Html.HiddenFor(m => m.[i].Name)
....
或更改使用自定义 EditorTemplate
对于类型 Item
,并在主视图中使用 @Html.EditorFor(m => m)
为集合中的每个项目生成正确的 html。
关于asp.net-mvc - @Html.HiddenFor 返回空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32012334/
型号: public sealed class Model { public string Value { get; set; } } Controller : [HandleError] p
虽然我已经阅读了 Html.HiddenFor 的文档,但我还没有掌握它的用途...... 有人可以解释它的用途并举一个简短的例子吗? 这些助手应该放在代码中的什么位置? 最佳答案 它在表单上为您传递
我有一个名为 Week 的字典属性: public IDictionary Week { get; private set; } 我正在尝试将其值传递给 HiddenFor (Days) @Html.
我使用此 View 编辑现有对象: @using (Html.BeginForm("EditPat","bff")) { @Html.AntiForgeryToken() @Html.
目前,我将一个模型作为表单的一种“默认值”传递到提交页面。我在表单上使用 HiddenFor 以确保它通过,而且效果很好。 但是,聪明的用户可以取消隐藏输入并对其进行编辑。是否有 HiddenFor
我有以下隐藏的输入: 我想将其转换为MVC助手HiddenFor。 得到了这么远: @Html.HiddenFor(x => x.Deleted, new { @class="deleted" })
请问你能帮帮我吗。 我有一个类: public class Product { ... // NOT REQUIRED! public virtual Category Catego
我有一个简单的销售信息形式,用户可以编辑评论和原因,然后使用 SaveChanges() 函数将数据提交回数据库。我需要更新包含 ID 号的字段。我有一个简单的下拉列表(由viewbag填充),当用户
在 ASP.NET MVC 4 Beta 中,我有一个具有此属性的实体: [DisplayFormat(DataFormatString = "{0:o}", ApplyFormatInEditMod
我正在关注一本书,这是代码: @using (Html.BeginForm("RemoveFromCart", "Cart")) { @Html.Hidden("ProductId", lin
我有一个枚举: public enum TaskType { None = 100, Install = 101, Decommission = 102, Modify
我正在使用 JQueryUI Datepicker,这是我在 View 中使用的代码 @model myprojectName.WebSite.DataModel.AvailableDate $(f
这部分感谢 Ethan Brown我想设置我的 Html.HiddenFor 的值具有预设值的助手 这是我的代码: model.idv, new { @value = ViewBag.id })%>
我可以用 @Html.HiddenFor(x=> ViewData["crn"]) 但是,我明白了, 为了以某种方式规避该问题( id=ViewData_crn_ and name=ViewData
我们在 MVC3 中遇到 Html.HiddenFor 的问题偶尔无法正确绑定(bind)。我们根本无法重现它,但我们在日志记录中看到了空引用,这让我们彻底发疯。 我们有以下模型和 Controlle
@Html.HiddenFor(model => model.title, new { id= "natureOfVisitField", @value = '@Model.title'}) 这不起作
当我尝试将 @Html.HiddenFor(@Model.ID) 添加到我的代码时,我在访问页面时收到以下错误: Compiler Error Message: CS0411: The type ar
每次用户单击图像时,如何在我的 javascript 中获取准确的“PostId”值 for (int i = 0; i @Html.HiddenFor(x => x[i].PostId, new
我正在尝试将表的结果返回给 Controller 以供进一步操作。一旦返回到 Controller ,该值显示为空。在过去,我已经能够使用 @Html.HiddenFor 返回值,但在这种情况下它似乎
在提交表单时,我正在使用 @Html.HiddenFor(a => a.ModelParameter) 来保存所有值,因为它正在传递给 Controller 。我的问题是,对于具有许多参数(25+
我是一名优秀的程序员,十分优秀!