2

我是 MVC3 的新手-无法弄清楚为什么日期格式验证在客户端不起作用,即,如果我手动更改文本框并输入无效的格式日期。我正在为这个字段使用 jQuery 日期选择器。奇怪的是,必填字段验证正在工作。

有人可以让我知道这段代码有什么问题吗?

谢谢!

视图模型

    [DisplayFormat(DataFormatString = "{0:d}", ApplyFormatInEditMode = true)]
    [DataType(DataType.Date, ErrorMessage="Please enter a valid date in the format dd/mm/yyyy")]
    [Required]
    public DateTime ADate { get; set; }

看法

        @Html.TextBox("ADate", Model.ADate.ToShortDateString(), new { @class = "ADate" })
        @Html.ValidationMessageFor(model => model.ADate, "*")
4

2 回答 2

1

DataType 和 DisplayFormat 仅在使用 DisplayFor 或 EditorFor 时有效,不适用于 TextBox。但是,您不能使用 EditorFor 设置类名。

于 2012-12-10T22:59:19.163 回答
1

您可以使用基础TextBoxFor()并指定类名

@Html.TextBoxFor(model => model.ADate, new { @class = "ADate" }) 
于 2012-12-19T00:00:01.417 回答