【发布时间】:2011-08-09 13:50:32
【问题描述】:
我正在使用 MVC3。当我用
创建一个字段时@Html.EditorFor(model => model.RowKey)
然后该值被发送回控制器,这正是我所需要的。但是,即使我希望将其值返回给控制器,我也不希望该字段可见。
有没有办法让 MVC3 隐藏一个字段?
【问题讨论】:
标签: asp.net-mvc
我正在使用 MVC3。当我用
创建一个字段时@Html.EditorFor(model => model.RowKey)
然后该值被发送回控制器,这正是我所需要的。但是,即使我希望将其值返回给控制器,我也不希望该字段可见。
有没有办法让 MVC3 隐藏一个字段?
【问题讨论】:
标签: asp.net-mvc
@Html.HiddenFor(model => model.RowKey)
请参阅What does Html.HiddenFor do? 了解示例
【讨论】:
如果您想保留Html.EditorFor(),您可以随时将模型的特定属性标记为隐藏:
using System.Web.Mvc.HiddenInput;
public class Model
{
[HiddenInput(DisplayValue = false)]
// some property
}
【讨论】:
Html.EditorForModel() 的策略并且更喜欢具体说明每个属性要包含的内容,但我只使用Html.EditorFor。我想如果我重新开始,我会使用Html.EditorForModel 并使用脚手架和属性自定义所有内容。
这对我有用:
@Html.EditorFor(m => m.RowKey, new { htmlAttributes = new { @style="display: none" } })
【讨论】:
你能像这样使用 hiddenfor 助手吗:
@Html.HiddenFor(m => m.RowKey)
【讨论】: