HTML DOM Input Datetimeオブジェクトとは?構文・属性・使い方を実例付きで解説
HTML DOM の Input Datetime オブジェクトは、type="datetime" が指定された HTML の <input> 要素を表すオブジェクトです。このオブジェクトを利用すると、JavaScript から日時入力フィールドの値や各種属性へアクセスし、動的に操作することができます。
なお、Safari を除く主要ブラウザでは type="datetime" は単なるテキスト入力として扱われる点に注意してください。また、datetime 型は HTML5 の仕様から削除されているため、実務ではタイムゾーン情報を持たないローカル日時を扱う type="datetime-local" の使用が推奨されます。
構文
以下が構文の一覧です。
type="datetime" の <input> 要素を作成する
var datetimeObject = document.createElement("input");
datetimeObject.type = "datetime";主な属性一覧
datetimeObject には、次の属性(プロパティ)があります。
| 属性 | 説明 |
|---|---|
| autocomplete | 日時フィールドの autocomplete 属性の値を定義します。 |
| autofocus | ページの初期読み込み時に、日時フィールドへ自動的にフォーカスするかどうかを設定します。 |
| defaultValue | 日時フィールドのデフォルト値を設定・取得します。 |
| disabled | 日時フィールドが無効状態か有効状態かを設定・取得します。 |
| form | 日時フィールドが属しているフォームへの参照を返します。 |
| min | 日時フィールドに入力できる最小値(min 属性)を取得・設定します。 |
| max | 日時フィールドに入力できる最大値(max 属性)を取得・設定します。 |
| name | 日時フィールドの name 属性の値を定義します。 |
| readOnly | 日時フィールドが読み取り専用かどうかを設定します。 |
| required | フォーム送信時に、日時フィールドの入力が必須かどうかを定義します。 |
| step | 日時フィールドの step 属性(値の刻み幅)の値を定義します。 |
| type | 日時フィールドのフォーム要素の種類を返します。 |
| value | 日時フィールドの value 属性の値を定義します。 |
メソッド
Input Datetime オブジェクトでは、次のメソッドも利用できます。
| メソッド | 説明 |
|---|---|
| stepDown(n) | 日時フィールドの値を、引数 n で指定した数だけ減少させます。 |
| stepUp(n) | 日時フィールドの値を、引数 n で指定した数だけ増加させます。 |
使用例:min プロパティの操作
ここでは、Input Datetime の min プロパティを使ったサンプルを紹介します。ボタンをクリックすると、JavaScript によって日時フィールドの最小値(min)が動的に書き換わります。
<!DOCTYPE html>
<html>
<head>
<title>Input Datetime の min プロパティ</title>
</head>
<body>
<form>
日付と時刻: <input type="datetime" id="dateTime" name="DateSelect" value="2009-6-24T20:49Z" min="2008-12-31T23:59:59Z">
</form>
<button onclick="minDateDecrease()">最小日時を変更する</button>
<div id="divDisplay"></div>
<script>
var inputDatetime = document.getElementById("dateTime");
var divDisplay = document.getElementById("divDisplay");
divDisplay.textContent = '最小日時(min): ' + inputDatetime.min;
function minDateDecrease() {
inputDatetime.min = '2010-12-31T23:59:59Z';
divDisplay.textContent = '最小日時(min): ' + inputDatetime.min;
}
</script>
</body>
</html>実行結果
このコードを実行すると、次のような画面が表示されます。
「最小日時を変更する」ボタンをクリックする前:

ボタンをクリックした後:

クリック前は min の値として「2008-12-31T23:59:59Z」が表示されていますが、ボタンをクリックすると JavaScript によって min 属性が「2010-12-31T23:59:59Z」に更新され、表示も切り替わります。このように、DOM オブジェクトのプロパティを介して、フォーム要素の属性を動的に制御できます。
-
HTML DOM 入力パスワード(Input Password)オブジェクトとは?使い方を解説
HTML DOM 入力パスワードオブジェクトとはHTML DOM の入力パスワード(Input Password)オブジェクトは、type属性に「password」が指定された <input> 要素に関連付けられたオブジェクトです。パスワード入力欄として表示されるこの要素は、文字が「●」や「*」などでマスクされ、第三者から入力内容が見えないようになっています。JavaScript を使ってパスワード入力要素を操作するには、新規に作成する場合は createElement() メソッド、既存の要素へアクセスする場合は getElementById() メソッドを使用します。Input
-
HTML DOM Timeオブジェクトとは?dateTimeプロパティの使い方を解説
HTML DOM Timeオブジェクトとは?HTML DOMのTimeオブジェクトは、HTML5で導入された<time>要素をJavaScriptから操作するためのインターフェースです。<time>要素を活用することで、人間が読める形式の日付・時刻情報とともに、機械が解釈できる正確な時刻データをWebページに埋め込むことができます。<time>要素を作成するJavaScriptで新しい<time>要素を動的に生成するには、document.createElement()メソッドにTIMEを指定します。var timeObject = docume