Bootstrap Datepicker Year仅不绑定

时间:2019-01-09 10:18:41

标签: javascript jquery twitter-bootstrap date picker

在我的MVC项目中,我的模型Datetime中有一个可为空的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”,但似乎没有任何绑定允许发生。

这很奇怪,我在同一页上还有另一个日期选择器,它允许用户选择月份和年份,并且在提交到另一个可为null的date属性时可以正确绑定。的代码如下:

$('.input-group.month').datepicker({
            format: "mm/yyyy",
            viewMode: "months",
            minViewMode: "months",
            keyboardNavigation: false,
            forceParse: false,
            autoclose: true,
            showOnFocus: false
});

我要怎么做才能阻止ReplacementDate值正确绑定?我是否必须将ReplacementDate设置为可为null的int或其他内容?

2 个答案:

答案 0 :(得分:2)

我建议这样做:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter</artifactId>
    <exclusions>
        <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-logging</artifactId>
        </exclusion>
    </exclusions>
</dependency>
$('#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.log($("#ui-datepicker-div .ui-datepicker-year :selected").val())
  }
});
#ui-datepicker-div {
  font-size: 12px;
}

.ui-datepicker-calendar {
  display: none;
}

答案 1 :(得分:0)

我将ReplacementDate DateTime属性更改为int并绑定了它。我不知道为什么当它是DateTime时为什么它不绑定,因为MM / yyyy版本可以很好地绑定为DateTime