我知道我的问题已经多次讨论过,但我似乎无法找到问题的明确答案。我做错了什么?!
我正在使用Bootstrap datepicker并继续收到消息"字段{name}必须是日期。"我确定问题与格式化有关,因为当我输入01/01/2016时它很好但是13/01/2016显示验证错误。
我已经读到这与datepicker格式或全球化设置有关,但我认为我已经涵盖了大部分内容;其他人提到部分意见的问题,但我不认为这是我的问题,因为日期不是局部视图。我做错了什么?
日期选择代码:
<script type="text/javascript">
$('.datepicker').datepicker({ format: 'dd/mm/yyyy', startView: 'years' }); //Initialise any date pickers
</script>
查看:
<div class="form-group">
@Html.LabelFor(m => m.BirthDate, new { @class = "col-md-2 control-label" })
<div class="col-md-10">
@Html.TextBoxFor(m => m.BirthDate, new { @class = "form-control datepicker", @id = "DateOfBirth" })
@Html.ValidationMessageFor(m => m.BirthDate, "", new { @class = "text-danger" })
</div>
</div>
模型
[Required(ErrorMessage = "Date of Birth is required")]
[Display(Name = "Birth Date")]
[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}")]
public DateTime BirthDate { get; set; }
Web Config
<system.web>
<globalization uiCulture="en-GB" culture="en-GB" />
</system.web>