MVC4输入字段占位符 [英] MVC4 input field placeholder
问题描述
确实 MVC4
默认支持占位符
生成的输入字段?我没有发现任何东西,所以我想实现我自己的无奈提示符=电子邮件
不传递给 ViewData.ModelMetadata。水印
同时产生的控制。为什么?
示范
公共类LogOnModel
{
[需要]
[显示(名字=电子邮件,提示=电子邮件)]
[数据类型(DataType.EmailAddress)
公共字符串电子邮件{获得;组; } }@ Html.TextBoxFor(M = GT; m.Email,新{占位符= ViewData.ModelMetadata.Watermark})
我得到的html code其中占位符
标签不具有任何文字
<输入数据-VAL =真正的数据-VAL-正则表达式=请输入一个有效的电子邮件地址的数据-VAL-所需=电子邮件领域是必须的。 ID =电子邮件NAME =电子邮件占位符=类型=文本VALUE =级=有效>
要使用插件的方法是使用一个编辑器模板。你需要做的是创造模板文件共享\\ EditorTemplates
文件夹,并将其命名为 String.cshtml
。然后把这个那个文件:
@ Html.TextBox(,ViewData.TemplateInfo.FormattedModelValue,
新{占位符= ViewData.ModelMetadata.Watermark})
然后在你认为像这样使用它:
@ Html.EditorFor(M = GT; Model.UnitPercent)
缺点,这个工程的类型的属性字符串
,你将不得不为每个模板键入
要用于水印支持。
Does MVC4
by default support placeholders
for generated input fields? I didn't found anything so I am trying to implement my own but unfortunately Prompt = "E-Mail"
is not passed to ViewData.ModelMetadata.Watermark
while generating control. Why?
Model
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 })
I get html code where placeholder
tag do not has any text
<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">
An alternative to using a plugin is using an editor template. What you need to do is to create a template file in Shared\EditorTemplates
folder and call it String.cshtml
. Then put this in that file:
@Html.TextBox("",ViewData.TemplateInfo.FormattedModelValue,
new { placeholder = ViewData.ModelMetadata.Watermark })
Then use it in your view like this:
@Html.EditorFor(m=>Model.UnitPercent)
The downside, this works for properties of type string
, and you will have to create a template for each type
that you want support for a watermark.
这篇关于MVC4输入字段占位符的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!