0

私はBootstrap daterangepickerを使用しています。 モーメントJSは、日付書式設定などのためにロケールを設定するために使用されています。タイムピッカーを正しいロケール形式で表示する

モーメントJSロケールに基づいてタイムピッカーを表示したいと思います。 DaterangepickerがtimePicker24Hour初期化

でピッカー形式(12H/24時間)を設定するためのパラメータがあります:真(または12時間形式の偽/パラメータなし)

どうやってできたのMoment JSから時刻形式に関するロケール情報を取得しますか? これで、initに適切なタイムピッカータイプを設定できました。

答えて

1

moment.localeDatalongDateFormatの方法を使用して、時刻形式に関するロケール固有の情報を取得できます。フォーマットにHH(24時間)トークンが含まれているかどうかをテストできます。ここで

ライブのサンプル:

function is24Hour(locale){ 
 
    var localeData = moment.localeData(locale); 
 
    var hourFormat = localeData.longDateFormat('LT'); 
 
    return hourFormat.includes('HH'); 
 
} 
 

 
console.log(is24Hour('en')); 
 
console.log(is24Hour('it')); 
 
console.log(is24Hour('fr')); 
 
console.log(is24Hour('de'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment-with-locales.min.js"></script>

これは、他のロケールではさらなる試験が必要な場合があります。

+0

ありがとうございます、実際これを行うのは非常にきちんとした方法です。フォーマット文字列を分割することは決して考えなかった。 –

+0

すぐにこれらの文字列がすぐに変更されないようにしましょう:) –

関連する問題