【问题标题】:Hide editor-label for public property when calling EditorFor(...)?调用 EditorFor(...) 时隐藏公共属性的编辑器标签?
【发布时间】:2010-05-08 09:36:05
【问题描述】:

当调用Html.EditorFor(m => m) 时,其中m 是具有公共属性的公共类,对于具有[HiddenInput] 的属性会显示隐藏输入和标签属性。

  • 如何隐藏标签而不将其设为私有或创建编辑器模板?

示例

public class User
{
    [HiddenInput]
    public Guid ID { get; set; } // should not be displayed in editor template
    public string Name { get; set; } // should be editable
}

EditorFor(...) 带有标签的 ID 属性结果不理想

<div class="editor-label">
    <label for="ID">ID</label> <!-- Why is this here? -->
</div>
<div class="editor-field">
    <input id="ID" name="ID" type="hidden" value="">
</div>

【问题讨论】:

  • 我试过[ScaffoldColumn(false)],它也隐藏了输入,但我想保留隐藏的输入,只是去掉标签。
  • 试过[DisplayName("")],它隐藏了&lt;label&gt;标签,而不是周围的&lt;div class="editor-label"&gt;,里面有“*”必需的指示符。

标签: asp.net-mvc-2 editorfor editorformodel meta-attribute


【解决方案1】:

解决方法:

[HiddenInput(DisplayValue=false)]

否则HideSurroundingHtml 设置不正确。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-03
    • 1970-01-01
    相关资源
    最近更新 更多