1. ホーム
  2. html

[解決済み] input type="date "のフォーマットを変更する方法はありますか?

2022-03-19 21:58:39

質問

WebページでHTML5の要素を使用しています。デフォルトで入力 type="date" は日付を YYYY-MM-DD .

問題は、その形式を次のようなものに変更することが可能かどうかです。 DD-MM-YYYY ?

解決方法は?

フォーマットを変更することはできません

オーバー・ザ・ワイヤー形式とブラウザの表示形式を区別する必要があります。

電線形式

HTML5 日付入力仕様 とは RFC3339仕様 と等しい完全な日付形式を規定している。 yyyy-mm-dd . 参照 セクション 5.6 を使用することで、RFC3339の仕様に準拠することができます。

このフォーマットは value HTML属性とDOMプロパティは、通常のフォーム送信を行う際に使用されるものです。

プレゼンテーションの形式

ブラウザは、日付入力の表示方法を自由に選択できます。この記事の執筆時点では、Chrome、Edge、Firefox、Operaが日付をサポートしています( こちら ). これらはすべて、日付ピッカーを表示し、入力フィールドのテキストをフォーマットします。

デスクトップ端末

Chrome、Firefox、Operaでは、入力フィールドのテキストの書式設定は、ブラウザの言語設定に基づきます。Edgeの場合は、Windowsの言語設定に基づきます。残念なことに、すべてのウェブブラウザは、オペレーティングシステムで設定された日付の書式を無視します。私には、これは非常に奇妙な動作であり、この入力タイプを使用する際に考慮すべき点です。たとえば、オランダのユーザーは、オペレーティングシステムやブラウザの言語設定を en-us が表示されます。 01/30/2019 の代わりに、慣れたフォーマットで表示されます。 30-01-2019 .

Internet Explorer 9、10、11 では、テキスト入力フィールドがワイヤー形式で表示されます。

モバイル端末

特にAndroid上のChromeでは、Androidの表示言語に基づいて書式が設定されています。他のブラウザーでも同様だと思われますが、確認できていません。