このようなビューモデルに DateOfBirth フィールドがあります。
[Required]
[DataType(DataType.Date)]
[Display(Name = "Date Of Birth")]
public DateTime DateOfBirth { get; set; }
そしてこれを持つビュー、
<li>
@Html.LabelFor(m => m.DateOfBirth)
@Html.TextBoxFor(m => m.DateOfBirth)
</li>
そして、日付ピッカーを追加するためのいくつかのjQuery、
<script type="text/javascript">
$('#DateOfBirth').datepicker({
yearRange: '1906:1994',
changeMonth: true,
changeYear: true,
showAnim: 'bounce'
});
</script>
1981 年 7 月 19 日、1981 年 7 月 19 日などの日付を選択すると、値が 01/01/0001 12:00:00 AM としてコントローラーに渡され、「The value '07/19/1981 ' 生年月日には無効です。" その日の値が 12 以下の場合は通過しますが、その日の値が 12 を超える場合は失敗することに気付きました。そこで、日付ピッカーの形式を次のように変更してみました
dateFormat: 'dd/mm/yy'
フォームを送信すると、「生年月日フィールドは日付でなければなりません」というエラーが表示されます。
これを修正するにはどうすればよいですか? 可能であれば、月/日/年として日付を表示できるようにしたいと考えています。