2017-01-29 3 views
0

Ich habe zu lange damit wegstecken und ich kann nicht sehen, wo die Formatierung für Bootstrap datetimepicker Steuerelement überschrieben wird.Wie zeigt Bootstrap/Moment DateTimePicker das korrekte 24-Stunden-Format an?

Das Bootstrap-DTP verwendet Moment.js im Hintergrund, um seine Zeitauswahl zu formatieren. Der JS-Code sieht wie folgt aus:

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(); 
    }); 
});                 

Nichts scheint zu komplex dort und die Formatierung in der HTML sieht ähnlich einfach:

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

jedoch, wenn das Modell auf die Ansicht gebunden und die JS iteriert Bei den Eingaben gehen die angezeigten Zeiten von 24 Stunden (zB 14:00) bis 12 Stunden (zB 02:00).

Ich bin davon überzeugt, dass dies mit der Integration von moment.js und sehr wahrscheinlich mit dem Umgang mit Zeitzonen zu tun hat, aber ich kann nicht sehen, wo ich verschiedene Einstellungen anwenden könnte. Vorschläge wären an dieser Stelle mehr als willkommen.

HTML output

+0

Welche der Datetime Sie verwenden ist? Ich denke, dass Sie [eonasdan datetimepicker] verwenden (https://eonasdan.github.io/bootstrap-datetimepicker/), in diesem Fall ist es besser, Ihre Frage neu zu setzen. Außerdem denke ich, dass die Option ['format'] (http://eonasdan.github.io/bootstrap-datetimepicker/Options/#format) explizit auf' DD/MM/YYYY HH: mm' gesetzt wird, um das Problem zu beheben. Standardmäßig verwendet die Komponente "TT/MM/JJJJ hh: mm A" – VincenzoC

+0

Ja, das ist die, die ich benutze. Entschuldigung, dass ich nicht spezifisch bin. –

+0

Ich konnte Ihr Problem nicht reproduzieren, es funktioniert für mich mit 'data-date-format' wie im Bild gezeigt, können Sie eine Geige oder einen Ausschnitt bereitstellen? Vielleicht ist etwas mit MVC verwandt und nicht beschränkt auf JS, HTML und Moment. – VincenzoC

Antwort

0

Versuchen Sie, diese

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