MVC 5プロジェクトでBootstrap 3 Datetimepicker 3.0. を使用する理由はいくつかあります。
週の始まりを月曜日から始めるようにオフセットする方法はありますか?言語タグも機能しません。
$(function () {
$('#PickupTime').datetimepicker({
weekStart: 1
});
});
これは同じbootstrap-datapicker.jsではないため機能しません
Moment.jsを使用する代わりに、moment-with-langs.jsを使用しました(デフォルトのパッケージASP.NET MVC 5に付属していると思います)。
呼び出すことにより:
<script type="text/javascript">
$('#DateTime').datetimepicker({
language: "hr"
});
</script>
物事はうまくいき、最終的にカレンダーは月曜日から始まります。
更新:さらに良いことに、キーをweb.configに追加します
<appSettings>
<add key="Culture" value="hr" />
</appSettings>
その後
$(document).ready(function () {
$(document).on('focus', '#Date', function () {
$(this).datetimepicker({
locale: '@System.Configuration.ConfigurationManager.AppSettings["Culture"]',
format: 'DD:MM:YYYY',
});
});
});
V2.8.1以降のmoment.jsを使用している場合は、datetimepicker()を呼び出す前に以下のコードを追加してください。
moment.updateLocale('en', {
week: { dow: 1 } // Monday is the first day of the week
});
$('#DateTime').datetimepicker();
古いバージョンのmoment.jsを使用している場合は、次の操作を行います
moment.lang('en', {
week: { dow: 1 }
});
$('#DateTime').datetimepicker();
Datetimepicker()を呼び出すときに、ロケールを介してdow値をオーバーライドすることもできます。
$('#myid').datetimepicker({
format:'YYYY-MM-DD',
locale: moment.locale('en', {
week: { dow: 1 }
}),
});
Datetimepickerのオプションによると、これは不可能です。次のプロパティのみをサポートします。
$.fn.datetimepicker.defaults = {
pickDate: true, //en/disables the date picker
pickTime: true, //en/disables the time picker
useMinutes: true, //en/disables the minutes picker
useSeconds: true, //en/disables the seconds picker
useCurrent: true, //when true, picker will set the value to the current date/time
minuteStepping:1, //set the minute stepping
minDate:`1/1/1900`, //set a minimum date
maxDate: , //set a maximum date (defaults to today +100 years)
showToday: true, //shows the today indicator
language:'en', //sets language locale
defaultDate:"", //sets a default date, accepts js dates, strings and moment objects
disabledDates:[], //an array of dates that cannot be selected
enabledDates:[], //an array of dates that can be selected
icons = {
time: 'glyphicon glyphicon-time',
date: 'glyphicon glyphicon-calendar',
up: 'glyphicon glyphicon-chevron-up',
down: 'glyphicon glyphicon-chevron-down'
}
useStrict: false, //use "strict" when validating dates
sideBySide: false, //show the date and time picker side by side
daysOfWeekDisabled:[] //for example use daysOfWeekDisabled: [0,6] to disable weekends
};
ソース:http://eonasdan.github.io/bootstrap-datetimepicker/#options
日曜日を見たくない場合は、週末を無効にすることができます。
たった今! moment.jsで次の行を変更します。
_week : {
dow : 1, // Sunday is the first day of the week.
doy : 6 // The week that contains Jan 1st is the first week of the year.
},
「dow」は1でなければならず、週は月曜日に始まります。
jquery.datetimepicker.jsを開き、変数 "dayOfWeekStart"を見つけて1に設定します
私は同じ質問に出くわしました、そして私は使っています:
そして、 ser3928861 の回答に従って、私は以下のようなmoment.jsの961行目に回答を見つけました:
var defaultLocaleWeek = {
dow : 1, // Sunday is the first day of the week.
doy : 6 // The week that contains Jan 1st is the first week of the year.
};
Datetimepickerには、世界のどこにいても一致するように設定するオプションがあります(ロケールオプション http://eonasdan.github.io/bootstrap-datetimepicker/Options/#locale を参照)
手動で上書きできます
$('#DateTime').datetimepicker({
locale: moment.local('en')
});
'locale' => [
'firstDay' => 1
]