<input type="tel">

ブラウザ
  • IE
  • Cr
  • Sf
  • Fx
  • O
分類 フロー・コンテンツ / フレージング・コンテンツ / インタラクティブ・コンテンツ / フォーム関連要素リスト化サブミット可能リセット可能再関連付け可能ラベル付け可能) / パルパブル・コンテンツ
利用場所 フレージング・コンテンツが置ける場所
内容

input要素type="tel" を指定すると、電話番号の入力欄を作成できます。


<input type="tel" name="example1">

<input type="tel" name="example2" size="15" maxlength="15">

属性
任意属性(共通)
type="" 部品のタイプ tel 電話番号の入力欄
name="" 部品の名前 文字列 部品を識別するための名前
value="" 送信される値 電話番号 入力欄の初期値 (任意の書式)
disabled 部品の無効化 disabled 値は省略可能
form="" [+]フォームとの関連付け ID名 関連付けるform要素に指定したID名
autofocus [+]自動フォーカスの指定 autofocus 値は省略可能、1つの文書に1つだけ指定可能
任意属性
size="" 入力欄の幅 数値 文字数で指定
maxlength="" 入力できる最大文字数 数値 文字数で指定
minlength="" [+]入力できる最小文字数 数値 文字数で指定
autocomplete="" [+]オートコンプリート on オートコンプリートを有効にする
off オートコンプリートを無効にする
list="" [+]入力候補のリスト ID名 関連付けるdatalist要素に指定したID名
pattern="" [+]入力可能なパターン 正規表現 JavaScriptの正規表現を使用
placeholder="" [+]入力のヒント 文字列 記入例、フォーマットの例
readonly 読み取り専用 readonly 値は省略可能
required [+]入力必須 required 値は省略可能

type属性name属性value属性disabled属性form属性autofocus属性の詳細については、input要素のページを参考にしてください。

このタイプの特徴

電話番号を入力するための入力欄です。

(実際の表示例)

見た目や機能などは、通常のテキスト入力欄とほとんど変わりません。

size属性について

size属性は、入力欄の幅を文字数で指定します。

次の例では、17文字分の幅を指定しています。

<input type="tel" name="example" size="17">

maxlength属性について

maxlength属性は、入力できる最大文字数を指定します。

次の例では、最大文字数を17文字に指定しています。

<input type="tel" name="example" maxlength="17">

minlength属性について

minlength属性は、入力できる最小文字数を指定します。

次の例では、最小文字数を10文字に指定しています。

<input type="tel" name="example" minlength="10">

autocomplete属性について

autocomplete属性は、オートコンプリート機能(入力内容の自動補完)を使うかどうかを指定します。

値には on(使う)または off(使わない)を指定します。この属性を省略した場合は、form要素の設定内容が使用されます。(form要素にも指定されていない場合は on の状態がデフォルトとなります)

<input type="tel" name="example" autocomplete="off">
  • HTML 5.1では、input要素のautocomplete属性に on / off 以外の値も指定できるようになりました(詳しくは仕様書をご覧ください)。これにより、きめ細やかな設定が行えるようになります。

list属性について

list属性は、入力候補リストの表示を指定します。この属性を使用する場合は、datalist要素で入力候補のリストを作成しておく必要があります。

値には、datalist要素に指定したID名を記述します。(datalist要素は、form要素の外に配置することも可能です)

<input type="tel" name="example" list="data1">

<datalist id="data1">
<option value="03-0000-0000"></option>
<option value="04-0000-0000"></option>
<option value="05-0000-0000"></option>
</datalist>

pattern属性について

pattern属性は、入力可能な値のパターンを、JavaScriptの正規表現を使って指定します。

  • ただし、この属性で指定する正規表現は、部分一致ではなく全体一致でチェックするものとなります。(パターンの前後に ^(?:)$ が指定されているとみなされます)
電話番号:<input type="tel" name="telNumber" pattern="\d{1,5}-\d{1,4}-\d{4,5}">
  • 上記の正規表現は、それほど厳密なものではありません。

pattern属性を使用する場合は、title属性で入力パターンの説明を入れておくことが推奨されています。この説明は、エラーメッセージ、ツールチップ、ステータスバーなどに表示される場合があります。

電話番号:<input type="tel" name="telNumber" pattern="\d{1,5}-\d{1,4}-\d{4,5}" title="電話番号は、市外局番からハイフン(-)を入れて記入してください。">

placeholder属性について

placeholder属性は、入力の助けとなるような短いヒント(記入例やフォーマットの例など)を指定します。

対応しているブラウザでは、この値が入力欄に表示されます。(入力を開始すると消えます)

電話番号:<input type="tel" name="telNumber" placeholder="00-0000-0000">

readonly属性について

readonly属性は、そのフォーム部品が読み取り専用であることを指定します。

この属性が指定された部品は、書き換えだけができなくなります。選択することは可能で、データも送信されることになります。

<input type="tel" name="example" readonly>
  • この属性が指定されたフォーム部品は、妥当性のチェックから除外されます。

required属性について

required属性は、そのフォーム部品が入力必須であることを指定します。

<input type="tel" name="example" required>

使用例

以前からある属性を指定した例

<dl>

<dt>デフォルト</dt>
<dd><input type="tel" name="example1"></dd>

<dt>幅を指定</dt>
<dd><input type="tel" name="example2" size="17"></dd>

<dt>最大文字数を指定</dt>
<dd><input type="tel" name="example3" size="17" maxlength="17"></dd>

<dt>初期値を指定</dt>
<dd><input type="tel" name="example4" size="17" value="00-0000-0000"></dd>

<dt>無効化を指定</dt>
<dd><input type="tel" name="example5" size="17" value="00-0000-0000" disabled></dd>

<dt>読み取り専用を指定</dt>
<dd><input type="tel" name="example6" size="17" value="00-0000-0000" readonly></dd>

</dl>

表示例
デフォルト
幅を指定
最大文字数を指定
初期値を指定
無効化を指定
読み取り専用を指定
  • 本題とは関係ありませんが、dt要素とdd要素にはスタイルが指定されています。
pattern属性、placeholder属性、required属性を指定した例
  • 動作確認のため、送信先としてHTMLファイル(現在のページ)を指定しています。

<form method="get" action="input_tel.html">

<p>電話番号:<input type="tel" name="telNumber" size="17" pattern="\d{1,5}-\d{1,4}-\d{4,5}" placeholder="00-0000-0000" title="電話番号は、市外局番からハイフン(-)を入れて記入してください。" required> <strong>必須</strong></p>

<p><input type="submit" value="送信する"></p>

</form>

表示例

電話番号: 必須

  • 対応しているブラウザでは、送信時に入力内容の妥当性がチェックされ、不備があればエラーメッセージが表示されます。