我正在研究在MVC4中创建编辑器模板的示例。
我在模型中添加了以下内容:
[Required]
[DataType(DataType.EmailAddress)]
[Display(Name = "Email"]
public string Email { get; set; }
将此添加到模型的视图中:
@Html.EditorFor(m => m.Email)
用这一行创建了一个名为EmailAddress.cshtml的EditorTemplate:
@Html.TextBox("", null, new {@class="text-box single-line", type="email", placeholder="Enter an email address"})
在我将Display属性更改为此之前,我无法让占位符显示在Chrome中:
[Display(Name = "Email address")]
在我更改之前,有人可以向我描述为什么它不起作用吗?当我调用EditorFor时,该属性与生成的内容之间的关系是什么?这个更改是如何导致占位符正确显示的?
感谢。
答案 0 :(得分:1)
在模型中,装饰者
[Display(Name = "Some Name")]
public string myproperty{get;set;}
用于显示视图中的标签,可通过
访问@Html.Labelfor(m=>m.myproperty)
我认为它与占位符
无关