asp.net-mvc - 使用 jQuery 掩码时日期无法正确显示

标签 asp.net-mvc asp.net-mvc-3 jquery jquery-plugins

我正在尝试使用this jQuery plugin作为我的 ASP MVC edit 页面上的输入掩码。但是,无论数据库中存储什么值,月份始终显示为两个零:00/dd/yyyy。我已在 Visual Studio 中单步执行代码并检查了数据库中存储的实际值并验证了它是否正确。

这是 View 中的 jQuery。所有其他输入掩码在此页面上均正常工作。 $('#Birthdate') 就是有问题的那个。

$(document).ready(function ($) {
    $('#HomePhone').mask("(999) 999-9999? x99999");
    $('#BusinessPhone').mask("(999) 999-9999? x99999");
    $('#MobilePhone').mask("(999) 999-9999");
    $('#FaxNumber').mask("(999) 999-9999? x99999");
    $('#Birthdate').mask("99/99/9999");
    $('#HomeZip').mask("99999?-9999");
    $('#MailingZip').mask("99999?-9999");
    $('#LocationZip').mask("99999?-9999");
});

    <div class="M-editor-field">
        @Html.EditorFor(model => model.Birthdate)
    </div>
    <div class="M-validator-field">
        @Html.ValidationMessageFor(model => model.Birthdate)
    </div>

这是我在页面上使用的jquery。

<script src="http://code.jquery.com/jquery-1.8.3.js" type="text/javascript"></script>
<script src="http://code.jquery.com/ui/1.9.2/jquery-ui.js" type="text/javascript"></script>
<script src="http://cloud.github.com/downloads/digitalBush/jquery.maskedinput/jquery.maskedinput-1.3.min.js"></script>

编辑

这是模型上的字段。我的显示设置是这样的

    [DisplayName("Date of Birth")]
    [DisplayFormat(DataFormatString = "{0:mm/dd/yyyy}", ApplyFormatInEditMode = true)]
    public DateTime? Birthdate { get; set; }

最佳答案

结果是 DisplayFormatDataFormatString 存在问题。将月份大写解决了问题:)

    [DisplayName("Date of Birth")]
    [DisplayFormat(DataFormatString = "{0:MM/dd/yyyy}", ApplyFormatInEditMode = true)]
    public DateTime? Birthdate { get; set; }

关于asp.net-mvc - 使用 jQuery 掩码时日期无法正确显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16676876/

相关文章:

JQuery PreventDefault() 但仍将片段路径添加到 URL,而不导航到片段

javascript - 如何从 jQuery 表单中获取所有输入字段?

javascript - 如何使用javascript获取复选框项目的值

c# - 如果 Views 的 "head"标签是否具有属性 "runat"有什么区别?

c# - 为什么 Request.Url.Authority 返回内部路径而不是我的域

jquery - jquery 中带有 css 的 class 属性

c# - 要验证哪一个? Viewodel、Model、Html、jQuery 还是全部?

asp.net-mvc - EditorTemplates/Object.cshtml 使用 EditorFor() 而不是 Editor()?

c# - 在现有 MVC3 网站中使用 SharePoint 组件

c# - 使用 Razor View 引擎将 MVC 2 项目迁移到 MVC 3 的最佳方法是什么?