ASP.Net Html.TextBoxFor(以及其他XxxxxFor编辑器帮助器方法)默认为呈现字段前缀。如何禁用字段前缀,以便将属性名称简单地呈现为名称/ ID?
以下是一个例子:
<%= Html.EditorFor(m => chart.Title) %>
呈现为:
<input id="Chart_Title" name="Chart.Title" type="text" value="">
我希望将其渲染为:
<input id="Title" name="Title" type="text" value="">
答案 0 :(得分:2)
EditorFor的重载中有一个名为htmlFieldName的参数。在这里指定你的名字。
答案 1 :(得分:1)
帮助者会接受你提供的任何东西。所以你需要传入变量的“Title”部分;也许尝试为变量分配标题,并为该Title变量使用Html.EditorFor,这可能会给你一个不同的响应。
它这样做的原因是帮助器被设置为从Model上下文反映出来,所以通常你可以看到Model.Chart.Title,因此,帮助器在名称中创建这个路径,以便它可以发布整个模型回到动作方法,如果需要的话。
HTH。