В моем проекте MVC у меня есть свойство Datetime, допускающее значение NULL, в моей модели с именем ReplacementDate.
На мой взгляд, у меня есть средство выбора даты Bootstrap (версия 2.0), которое инициализируется с помощью следующего кода:
$('.input-group.decade').datepicker({
format: "yyyy",
viewMode: "years",
minViewMode: "years",
keyboardNavigation: false,
forceParse: false,
autoclose: true,
showOnFocus: false
});
Датапикер правильно отображается на экране, и я могу выбрать только значение года из календаря. Но когда я отправляю данные формы, свойство ReplacementDate не имеет значения. Я попытался установить формат «yyyy», «yyyy» и даже «YYYY», но, похоже, ничто не позволяет выполнить привязку.
Странно то, что у меня есть еще один datepicker на той же странице, который позволяет пользователю выбрать месяц и год, и он правильно привязывается при отправке к другому свойству даты, допускающему значение NULL. Код для этого следующий:
$('.input-group.month').datepicker({
format: "mm/yyyy",
viewMode: "months",
minViewMode: "months",
keyboardNavigation: false,
forceParse: false,
autoclose: true,
showOnFocus: false
});
Что я делаю не так, чтобы значение ReplacementDate не связывалось правильно? Мне нужно сделать ReplacementDate обнуляемым int или что-то в этом роде?



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Я бы посоветовал сделать это так:
$('#date1').datepicker({
changeMonth: true,
changeYear: true,
showButtonPanel: true,
dateFormat: 'yy',
onClose: function(dateText, inst) {
var year = $("#ui-datepicker-div .ui-datepicker-year :selected").val();
$(this).datepicker('setDate', new Date(year));
console.info($("#ui-datepicker-div .ui-datepicker-year :selected").val())
}
});#ui-datepicker-div {
font-size: 12px;
}
.ui-datepicker-calendar {
display: none;
}<script src = "https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.js"></script>
<script src = "https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.js"></script>
<link rel = "stylesheet" href = "https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/themes/vader/jquery-ui.min.css" />
<input type = "text" id = "date1" name = "date1" />Я изменил свойство ReplacementDateDateTime на int, и оно было привязано. Я не знаю, почему он не привязывался, когда DateTime говорил, что версия MM / yyyy привязана нормально как DateTime.