在我拥有的一个 ViewModel 中,有一个 IList 类型的属性,其中就业视图模型有一些属性,其中两个是日期属性“From”和“To”
[Display(Name = "From", Description = "Enter your Employment Start Date")]
[Date(ErrorMessage = "Date selected is invalid"), DataType(DataType.Date)]
public DateTime? From { get; set; }
[Display(Name = "To", Description = "Enter your Employment End Date")]
[Date(ErrorMessage = "Date selected is invalid"), DataType(DataType.Date)]
public DateTime? To { get; set; }
我正在使用 DataAnnotationExtensions 顺便说一句。
在界面上,我使用 jQuery UI datepicker 来允许用户选择日期。尽管放置了 DataAnnotations,但“To”和“From”字段未显示任何“data-val”属性。
当我将显示的日期更改为无效日期时,jQuery 不显眼的验证不会触发一条消息,指出“所选日期无效”。
更新 - 更多信息
@Html.LabelFor(m => m.Employments[i].From, new { @class = "formLabel" })
@Html.TextBox(GetInputName(i, "From"), (@Model.Employments[i].From.HasValue ? @Model.Employments[i].From.Value.ToString("MM/dd/yyyy") : ""), new { @class = "textBox toDate dynHasDatepicker", placeholder = "mm/dd/yyyy" })
用于另一个属性“BirthDate”的相同视图/视图模型完美!
这里只有一个区别,主 ViewModel 包含两个属性: 1- BirthDate 2- 就业(EmploymentViewModel 的集合)
EmploymentViewModel 包含 From 和 To 属性。这会影响验证过程吗?
有什么理由吗?
谢谢