gpt4 book ai didi

asp.net-mvc - EditorForModel - 使用 editorfor 时出现重复标签

转载 作者:行者123 更新时间:2023-12-02 02:11:42 25 4
gpt4 key购买 nike

我在 ASP.NET MVC 应用程序中使用了许多针对不同数据类型(字符串、日期时间等)的编辑器模板。例如,以下是我用于字符串的内容:

<div class="editor-label">
@Html.Label("")
</div>
<div class="editor-field">
@Html.TextBox("", ViewData.TemplateInfo.FormattedModelValue, new { @class = "text", placeholder = ViewData.ModelMetadata.Watermark })
@Html.ValidationMessage("")
</div>

我想在我的 View 中使用 EditorForModel,但是当我这样做时,它似乎为每个属性添加了自己的标签,导致重复的标签(因为我的字符串编辑器模板中有一个标签)。除了从我的字符串编辑器模板(在本例中)中删除标签之外,还有什么方法可以告诉 editorformodel 不要插入标签吗?

最佳答案

一种可能性是覆盖 default object editor template (~/Views/Shared/EditorTemplates/Object.cshtml) 并删除它添加的标签:

@if (ViewData.TemplateInfo.TemplateDepth > 1) 
{
@ViewData.ModelMetadata.SimpleDisplayText
}
else
{
foreach (var prop in ViewData.ModelMetadata.Properties.Where(pm => pm.ShowForEdit && !ViewData.TemplateInfo.Visited(pm)))
{
if (prop.HideSurroundingHtml)
{
@Html.Editor(prop.PropertyName)
}
else
{
<div class="editor-field">
@Html.Editor(prop.PropertyName)
@Html.ValidationMessage(prop.PropertyName)
</div>
}
}
}

关于asp.net-mvc - EditorForModel - 使用 editorfor 时出现重复标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11992414/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com