asp.net-mvc – 在Mvc中验证DateFormat

前端之家收集整理的这篇文章主要介绍了asp.net-mvc – 在Mvc中验证DateFormat前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个属性ExpiredDate在MVC中定义
[required]
        [DisplayFormat(DataFormatString = "{0:MM/dd/yyyy}")]
        public DateTime? ExpirationDate { get; set; }

我想验证一个页面上的日期格式不正确.
我使用的日期格式是MM / dd / yyyy.

解决方法

您应该将 DataType属性DataType.Date一起包含.这些都可以在 System.ComponentModel.DataAnnotations命名空间中找到.
[required]
[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:MM/dd/yyyy}")]
public DateTime? ExpirationDate { get; set; }

This answer包括一些更多的属性.

更新以包括在ASP.NET MVC4中启用客户端验证的说明

要启用客户端验证,您需要:

>将jquery.validation插件添加到页脚

<%: Scripts.Render("~/Scripts/jquery.validate.min.js") %>
<%: Scripts.Render("~/Scripts/jquery.validate.unobtrusive.min.js") %>

>将其添加到web.config

<appSettings>
  <add key="ClientValidationEnabled" value="true" />
  <add key="UnobtrusiveJavaScriptEnabled" value="true" />
</appSettings>

>在使用@ Html.ValidationMessageFor()时使用这个CSS,以便它被初始隐藏并通过javascript验证显示

<style type="text/css">

/* styles for validation helpers */
.field-validation-error {
    color: #e80c20;
    font-weight: bold;
}

.field-validation-valid {
    display: none;
}

input.input-validation-error {
    border: 1px solid #e80c20;
}

input[type="checkBox"].input-validation-error {
    border: 0 none;
}

.validation-summary-errors {
    color: #e80c20;
    font-weight: bold;
    font-size: 1.1em;
}

.validation-summary-valid {
    display: none;
}

</style>

猜你在找的asp.Net相关文章