ASP.NET MVC中EditorFor()的HTML属性
为什么我不能将html属性传递给EditorFor()
?例如;
<%= Html.EditorFor(model => model.Control.PeriodType, new { disabled = "disabled", readonly = "readonly" }) %>
我不想使用元数据
:解决方案是从视图中调用此方法:
<%=Html.EditorFor( model => model.Control.PeriodEndDate, new {Modifiable=model.Control.PeriodEndDateModifiable})%>
并ViewData["Modifiable"]
在我的自定义EditorTemplates/String.ascx中使用,其中我具有一些视图逻辑,该逻辑确定是否向输入中添加只读和/或禁用属性。传入的匿名对象EditorFor()
是一个名为的参数additionalViewData
,其属性将传递给该模板中的编辑器模板。ViewData
采集。
回答:
EditorFor
与元数据一起使用,因此,如果您想添加html属性,则可以始终这样做。另一种选择是简单地编写自定义模板并使用TextBoxFor
:
<%= Html.TextBoxFor(model => model.Control.PeriodType, new { disabled = "disabled", @readonly = "readonly" }) %>
以上是 ASP.NET MVC中EditorFor()的HTML属性 的全部内容, 来源链接: utcz.com/qa/427669.html