为什么我不能传入html属性EditorFor()?例如;
<%= Html.EditorFor(model => model.Control.PeriodType,
new { disabled = "disabled", readonly = "readonly" }) %>
Run Code Online (Sandbox Code Playgroud)
我不想使用元数据
更新:解决方案是从视图中调用它:
<%=Html.EditorFor( model => model.Control.PeriodEndDate, new {Modifiable=model.Control.PeriodEndDateModifiable})%>
Run Code Online (Sandbox Code Playgroud)
并ViewData["Modifiable"]在我的自定义EditorTemplates/String.ascx中使用,其中我有一些视图逻辑,确定是否将readonly和/或disabled属性添加到输入传入的匿名对象EditorFor()是一个被调用的参数additionalViewData,其属性被传递给编辑器模板ViewData采集.
Asp.Net MVC 2.0预览版提供了类似的帮助程序
Html.EditorFor(c => c.propertyname)
Run Code Online (Sandbox Code Playgroud)
如果属性名称是字符串,则上面的代码呈现texbox.
如果我想将MaxLength和Size属性传递给文本框或我自己的css类属性,该怎么办?
我是否需要在我的应用程序中为每种大小和长度组合创建一个模板?如果是这样,那么不会使默认模板可用.