HTML5似乎支持用于things such as的一系列新的input fields
有没有人为ASP.NET MVC实现了HtmlHelper
扩展方法来生成这些扩展方法?可以使用接受htmlAttributes
的重载来实现这一点,例如:
Html.TextBoxFor(model => model.Foo, new { type="number", min="0", max="100" })
但这不像以下代码那样好(或类型安全):
Html.NumericInputFor(model => model.Foo, min:0, max:100)
发布于 2013-05-13 22:12:12
需要注意的是,现在可以使用DataType
属性将其中的许多内容合并到MVC4中。
从this work item开始,您可以使用:
public class MyModel
{
// Becomes <input type="number" ... >
public int ID { get; set; }
// Becomes <input type="url" ... >
[DataType(DataType.Url)]
public string WebSite { get; set; }
// Becomes <input type="email" ... >
[DataType(DataType.EmailAddress)]
public string Email { get; set; }
// Becomes <input type="tel" ... >
[DataType(DataType.PhoneNumber)]
public string PhoneNumber { get; set; }
// Becomes <input type="datetime" ... >
[DataType(DataType.DateTime)]
public DateTime DateTime { get; set; }
// Becomes <input type="date" ... >
[DataType(DataType.Date)]
public DateTime Date { get; set; }
// Becomes <input type="time" ... >
[DataType(DataType.Time)]
public DateTime Time { get; set; }
}
发布于 2010-09-01 04:50:56
发布于 2014-06-13 11:09:56
最简单的方法是简单地添加type=“电子邮件”作为html属性。它会覆盖默认的文本“type=”。下面是一个需要html5验证器的例子:
@Html.TextBox("txtEmail", "", new {placeholder = "email...", @type="email", @required = ""})
https://stackoverflow.com/questions/3613060
复制相似问题