HTML DOM Input Time オブジェクトの使い方を徹底解説!属性・メソッド・サンプルコード付き
HTML DOM の Input Time オブジェクトは、HTML の <input type="time"> 要素を JavaScript から操作するためのインターフェースです。時刻入力フィールドの値の取得や設定、表示制御などがプログラムから行えます。
構文(Syntax)
Input Time オブジェクトを作成する基本的な構文は以下の通りです。
type="time" の <input> 要素を作成する
var timeObject = document.createElement("input");
timeObject.type = "time";
このように document.createElement() で input 要素を生成し、type プロパティに「time」を指定することで、時刻入力フィールドとして動作させることができます。
主な属性一覧
Input Time オブジェクトで利用できる主な属性は以下の通りです。
| 属性 | 説明 |
|---|---|
| autocomplete | 時刻フィールドの autocomplete(自動補完)属性の値を定義します。 |
| autofocus | ページ読み込み時に、その時刻フィールドへ自動的にフォーカスを当てるかどうかを設定します。 |
| defaultValue | 時刻フィールドのデフォルト値を設定または取得します。 |
| disabled | 時刻フィールドが無効化されているかどうかを設定または取得します。 |
| form | その時刻フィールドを含むフォームへの参照を返します。 |
| max | 時刻フィールドに入力できる最大時刻(max 属性)を取得または設定します。 |
| min | 時刻フィールドに入力できる最小時刻(min 属性)を取得または設定します。 |
| name | 時刻フィールドの name 属性の値を定義します。 |
| readOnly | 時刻フィールドが読み取り専用かどうかを設定します。 |
| required | フォーム送信時に、その時刻フィールドの入力が必須かどうかを設定します。 |
| step | 時刻フィールドの step 属性(増減の間隔)の値を定義します。 |
| type | 時刻フィールドのフォーム要素の種類(type)を返します。 |
| value | 時刻フィールドの value 属性(現在の値)を定義します。 |
利用可能なメソッド
Input Time オブジェクトには、以下の2つの便利なメソッドが用意されています。
| メソッド | 詳細 |
|---|---|
| stepDown() | 時刻フィールドの値を、指定した分数だけ減らします。 |
| stepUp() | 時刻フィールドの値を、指定した分数だけ増やします。 |
サンプルコード:form プロパティの使用例
ここでは、Input Time オブジェクトの form プロパティを使った具体例を見てみましょう。以下のコードでは、時刻入力フィールドがどのフォームに属しているかを取得し、画面に表示しています。
<!DOCTYPE html>
<html>
<head>
<title>Input Time form</title>
<style>
form {
width:70%;
margin: 0 auto;
text-align: center;
}
* {
padding: 2px;
margin:5px;
}
input[type="button"] {
border-radius: 10px;
}
</style>
</head>
<body>
<form id="Physics">
<fieldset>
<legend>Time-form</legend>
<label for="TimeSelect">試験開始時刻 :
<input type="time" id="TimeSelect" value="14:00" disabled>
</label>
<input type="button" onclick="getform()" value="どの試験?">
<div id="divDisplay"></div>
</fieldset>
</form>
<script>
var divDisplay = document.getElementById("divDisplay");
var inputTime = document.getElementById("TimeSelect");
function getform() {
divDisplay.textContent = inputTime.form.id+' の試験は '+inputTime.value+' 開始です';
}
</script>
</body>
</html>
コードのポイント
<input type="time">に初期値「14:00」を設定し、disabled属性で編集不可にしています。- ボタンをクリックすると
getform()関数が実行されます。 inputTime.form.idによって、時刻フィールドが属するフォームの ID(ここでは「Physics」)を取得できます。- 結果として、「Physics の試験は 14:00 開始です」というテキストが div 要素内に表示されます。
実行結果
上記のコードを実行すると、以下のような出力が得られます。
「どの試験?」ボタンをクリックする前:

「どの試験?」ボタンをクリックした後:

まとめ
HTML DOM の Input Time オブジェクトを使えば、時刻入力フィールドの値の取得・設定だけでなく、min / max / step による入力範囲の制御や、stepUp() / stepDown() による値の増減なども簡単に実装できます。フォームと連動した動的な UI を作成する際にぜひ活用してみてください。
-
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