使用格式MM / YYYY为Bootstrap-datetimepicker分配值显示不正确的年份

时间:2018-06-05 18:54:17

标签: asp.net-mvc-4 bootstrap-datetimepicker eonasdan-datetimepicker

我在ASP MVC 4 app中使用bootstrap-datetimepicker版本4.17.47。

我有这个模型属性:

public DateTime MonthYear { get; set; }

我在控制器中分配默认值(任意值只是一个示例,实际值是通过某种逻辑确定的):

model.MonthYear = new DateTime(2017, 3, 1);

我使用datepicker在视图中显示此内容,以便用户可以根据需要更新值:

@Html.TextBoxFor(model => model.MonthYear, new { @class = "form-control input month-picker" })

脚本:

$('.month-picker').datetimepicker({
    format: 'MM/YYYY',
    useCurrent: false,
    toolbarPlacement: 'bottom',
    viewMode: 'months'
});

问题是控制显示" 03/0001"而不是" 03/2017"。

我在这里缺少什么?

1 个答案:

答案 0 :(得分:1)

显然问题是当datetimepicker只期望MM / YYYY时,输入正在从服务器填充DD / MM / YYYY日期。尝试格式化文本框,例如:

@Html.TextBoxFor(model => model.MonthYear, "{0:MM/yyyy}", new { @class = "form-control input month-picker" })

这应该有效。