【发布时间】:2013-04-08 12:34:31
【问题描述】:
MVC4 默认支持 placeholders 生成的输入字段吗?我没有找到任何东西,所以我试图实现自己的,但不幸的是Prompt = "E-Mail" 在生成控制时没有传递给ViewData.ModelMetadata.Watermark。为什么?
型号
public class LogOnModel
{
[Required]
[Display(Name = "E-Mail", Prompt = "E-Mail")]
[DataType(DataType.EmailAddress)]
public string Email { get; set; }
}
@Html.TextBoxFor(m => m.Email, new { placeholder = ViewData.ModelMetadata.Watermark })
我得到了placeholder标签没有任何文本的html代码
<input data-val="true" data-val-regex="Please enter a valid e-mail address" data-val-required="The E-Mail field is required." id="Email" name="Email" placeholder="" type="text" value="" class="valid">
【问题讨论】:
-
这个问题同:stackoverflow.com/questions/9841233/…。那里提出的答案是使用
EditorFor而不是TextBoxFor或使用内联占位符... -
嗯,对不起,我的意思是 templated EditorFor(这意味着您将它放在特殊目录“EditorTemplates”中并将其模型指向您的字段...)。跨度>