Bootstrap / Moment DateTimePicker如何无法显示正确的24小时格式?

时间:2017-01-29 22:16:46

标签: javascript momentjs eonasdan-datetimepicker

我已经把这个问题拖了太长时间,我无法看到Bootstrap的datetimepicker控件的格式被覆盖的位置。

Bootstrap DTP在幕后使用Moment.js格式化其时间选择器。 JS代码如下所示:

selector.find(".datepicker").each(function() {
    var $that = $(this);

    $that.datetimepicker({
        sideBySide: true,
        useCurrent: false,
        minDate: new Date(1910, 1, 1)
    });

    $that.children("input").on("focus", function() {
        $that.data("DateTimePicker").show();
    });
});                                                                 

那里看起来没有什么太复杂,HTML中的格式看起来同样简单:

@Html.EditorFor(x => x.DateTime, new { @dateFormat = "DD/MM/YYYY HH:mm", @mandatory = true })

然而,当模型绑定到视图并且JS迭代输入时,显示的时间从24小时(例如14:00)到12小时(即02:00)。

我确信这与moment.js集成有很大关系,很可能是它对时区的处理,但我看不出在哪里可以应用不同的设置。在这一点上,建议非常受欢迎。

HTML output

1 个答案:

答案 0 :(得分:0)

试试这个

    $that.datetimepicker({
        format: 'DD/MM/YYYY HH:mm',
        sideBySide: true,
        useCurrent: false,
        minDate: new Date(1910, 1, 1)
    });