asp.net-mvc - 验证 Mvc 中的日期格式

标签 asp.net-mvc asp.net-mvc-3 asp.net-mvc-4

我有一个属性 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 验证显示

    /* 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;
    }
    
  • 关于asp.net-mvc - 验证 Mvc 中的日期格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16565532/

    相关文章:

    c# - 使用区域时应用程序找不到 View

    asp.net-mvc - razor - 获取部分列表

    c# - 上传的文件未显示在项目解决方案 (Mvc5) 中

    asp.net - 如何为 XmlDocumentationProvider 处理 azure 上的路径

    c# - 从 ASP.NET MVC 中的布局调用操作方法

    asp.net-mvc - 哪种类型的缓存适合在 Umbraco 项目中使用?如何实现智能缓存?

    .net - IIS6 + MVC3 + 依赖注入(inject)错误

    .net - 何时通过 NuGet 使用 MVC Scaffolding 与通过 MVC3 Tools Update 使用 MVC Scaffolding

    c# - 在 Umbraco 站点上处理 MVC 部分 View 中的全局设置节点

    asp.net-mvc-3 - ASP.Net MVC 3.0 Ajax.ActionLink Onbegin Function true 执行 Action ?