Только год Bootstrap Datepicker без привязки

В моем проекте 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 или что-то в этом роде?

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
0
1 536
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Я бы посоветовал сделать это так:

$('#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.

Другие вопросы по теме