【问题标题】:Editor template being wrapped whilst being used with EditorFor extension method编辑器模板在与 EditorFor 扩展方法一起使用时被包装
【发布时间】:2011-04-08 11:20:21
【问题描述】:

Html.EditorFor 扩展在为模型属性生成 HTML 方面做得很好,但我无法更改围绕表单字段生成的类。 (编辑标签,编辑字段)

<div class="editor-label">
<label for="ContactNumber">Contact number</label>
</div>

<div class="editor-field">
<input class="text-box single-line" id="ContactNumber" name="ContactNumber" type="text" value="" />
</div>

我想做的是创建我自己的编辑器模板,我已经这样做了,但是该方法只是将我所做的事情包装在已经生成的代码中。

这是我的模板

@model System.String

<div class="field-wrap">
    <div class="MyOwnClass">
        @Html.LabelFor(m => m)
    </div>
    <div class="MyOwnClass">
        @Html.TextBoxFor(m => m)
        @Html.ValidationMessageFor(m => m)
    </div>
</div>

这是调用 Html.EditorForModel() 时生成的输出。

<div class="editor-label">
 <label for="ContactNumber">Contact number</label>
</div>

<div class="editor-field">

 <div class="field-wrap">

    <div class="MyOwnClass">
        <label for="ContactNumber">Contact number</label>
    </div>

    <div class="MyOwnClass">
        <input id="ContactNumber" name="ContactNumber" type="text" value="" />
    </div>
 </div>
</div>

如何实现一个模板来实际呈现我想要的效果?

【问题讨论】:

    标签: c# asp.net-mvc


    【解决方案1】:

    我认为您正在寻找 this answer - 即覆盖 object.ascx 模板。

    【讨论】:

      猜你喜欢
      • 2011-05-14
      • 2014-02-05
      • 1970-01-01
      • 2017-03-30
      • 1970-01-01
      • 2013-02-19
      • 2016-07-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多