在我的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或其他内容?
答案 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
。