我在一个表单中使用ASP.NET MVC 3 TextBoxFor,并希望使用type =“email”以便更轻松地输入至少一些移动设备,但无法找到如何使用TextBoxFor设置它。这不容易吗?
在视图中
@Html.LabelFor(m => m.Email)
@Html.TextBoxFor(m => m.Email)
在模型中
[StringLength(50)]
public string Email { get; set; }
(已经使用数据注释来保护DB中的大小约束)
答案 0 :(得分:46)
尝试使用
@Html.TextBoxFor(m => m.Email, new { @type = "email" })
http://msdn.microsoft.com/en-us/library/ee703538.aspx(htmlAttributes)
答案 1 :(得分:3)
你的使用方法错误了!
在视图中使用EditorFor:
@Html.LabelFor(m => m.Email)
@Html.EditorFor(m => m.Email)
在模型中,添加[DataType( DataType.EmailAddress )]
数据注释属性:
[DataType( DataType.EmailAddress )]
public string Email { get; set; }
答案 2 :(得分:2)
尝试将[DataType( DataType.EmailAddress )]
添加到电子邮件属性中。
[DataType( DataType.EmailAddress )]
[StringLength(50)]
public string Email { get; set; }
答案 3 :(得分:1)
[StringLength(50)]
[DataType(DataType.EmailAddress, ErrorMessage = "Invalid Email Address")]
public string EmailAddress
{
get;
set;
}
尝试添加此内容。我认为它有效