C# ASP.NET MVC5和x27;我不申请上课
编译成C# ASP.NET MVC5和x27;我不申请上课,c#,asp.net-mvc,razor,C#,Asp.net Mvc,Razor,编译成 如何让Razor应用类表单控件?您应该使用@Html.TextBoxForHtml帮助程序 使用@Html.EditorFor无法执行此操作 发生这种情况的原因是,EditorForhtml助手必须首先找出应该为模型属性生成的适当html元素。因此,它不能将css类分配给未知元素。另一方面,TextBoxFor生成类型为text的输入元素。因此,它可以应用您从一开始就选择的css类 例如,如果我们有: @Html.EditorFor(model => model.Id, new
如何让Razor应用类
表单控件
?您应该使用@Html.TextBoxFor
Html帮助程序
使用@Html.EditorFor
无法执行此操作
发生这种情况的原因是,EditorFor
html助手必须首先找出应该为模型属性生成的适当html元素。因此,它不能将css类分配给未知元素。另一方面,TextBoxFor
生成类型为text的输入元素。因此,它可以应用您从一开始就选择的css类
例如,如果我们有:
@Html.EditorFor(model => model.Id, new { @class = "form-control" } )
生成的元素将是checkbox类型的输入元素(我假设
IsAdult
是一个布尔类型)。从mvc5.1开始,您可以按如下方式执行此操作
@Html.EditorFor(model => model.IsAdult)
请参见
Html。EditorFor
有一些不同的重载。承包商有以下签名:
@Html.EditorFor(model => model.Id, new { htmlAttributes = new { @class = "form-control" } })
方法将允许您传入html属性并正确分配它们。您可能需要查看以下内容:[详细答案][1][1]:@AleksandarMarkovski供将来参考,您可以在注释中链接帖子,如:
[link](http://www.example/com)
解释得很好。如果我能为不同的编辑器设置默认类,那就太酷了。@donquixote非常感谢你。我很高兴我帮了忙。
public static MvcHtmlString EditorFor<TModel, TValue>(
this HtmlHelper<TModel> html,
Expression<Func<TModel, TValue>> expression,
object additionalViewData
)
@Html.TextBoxFor(model => model.Id,
new { @class = "form-control" })