2010-08-23 47 views
1

ASP.Net Html.TextBoxFor(和其他XxxxxFor编辑器帮助器方法)默认呈现字段前缀。如何禁用字段前缀,使其仅将名称/ ID作为属性名称呈现?ASP.Net MVC 2 - 如何停止在字段上使用前缀视图?

下面是一个例子:

<%= Html.EditorFor(m => chart.Title) %> 

呈现为:

<input id="Chart_Title" name="Chart.Title" type="text" value=""> 

我宁愿它被呈现为:

<input id="Title" name="Title" type="text" value=""> 

回答

2

EditorFor的重载中有一个参数叫做htmlFieldName。在这里指定你的名字。

1

佣工采取任何你给它。所以你只需要传入变量的“标题”部分;也许尝试将标题分配给变量,并使用Html.EditorFor作为Title变量,这可能会给你一个不同的响应。

它这样做的原因是帮助者设置为从Model上下文反映,因此通常可以看到Model.Chart.Title,因此助手会在名称中创建此路径,以便可以将整个模型回到行动方法,如果需要的话。

HTH。