我的公司使用KendoUI和ASP.NET MVC作为输入表单 . 我们在大多数模型属性上都有数据注释,并且验证与Html Helpers一起正常工作 . 然而,一旦我们用Html.Kendo() . TextBoxFor替换了Html.TextBoxFor,输入都变成了默认的type = text而不是从数据注释中提取类型 .
我可以通过在每个KendoUI小部件的HtmlAttributes部分中包含type =“email”来强制创建电子邮件类型 . 但是,由于之前是自动的,看起来我们正在使用KendoUI小部件向后退 . 我错过了什么吗?我当前的数据注释如下:
[DataType(DataType.EmailAddress, ErrorMessage ="The email address is not valid")]
此外,如果我添加type = "email",当我没有正确的电子邮件时,会显示新的Kendo验证消息 . 对于任何其他验证都不会发生这种情况,这些验证出现在Html.ValidationMessageFor所在的位置 . 这个新的Kendo验证消息具有不同的样式,并直接在 <input/>
标记下显示为 <label>
. 除了使用CSS隐藏此标签之外,还有另一种方法可以在添加类型时仅显示一条验证消息吗?
提前致谢!
1 回答
Kendo验证支持
Required
StringLength
Range
RegularExpression
数据注释(http://docs.telerik.com/kendo-ui/aspnet-mvc/validation)但是为了支持
[EmailAddress(...)]
注释,您可以使用此kendo自定义全局验证规则(就像我在我的项目中一样):与隐藏kendo验证工具提示相同我正在使用此全局css规则: