サーチ…


前書き

インタラクティブなWebシステムの重要なコンポーネントである入力タグは、ユーザーから特定の形式の入力を受けるように設計されたHTML要素です。異なるタイプの入力要素は、指定されたフォーマットに適合するように入力されたデータを調整し、パスワード入力にセキュリティを提供することができる。

構文

  • <input type="" name="" value="">

パラメーター

パラメータ詳細
クラス入力のクラスを示します。
id 入力のIDを示します。
タイプ表示する入力コントロールのタイプを識別します。許容値がされているhiddentexttelurlemailpassworddatetimenumberrangecolorcheckboxradiofilesubmitimagereset 、およびbutton 。値が指定されていない場合、または値が無効な場合、またはブラウザが指定されたタイプをサポートしていない場合は、デフォルトでtextなります。
入力の名前を示します。
無効入力を無効にする必要があることを示すブール値。無効なコントロールは編集できません。フォーム送信時に送信されず、フォーカスを受け取ることができません。
チェックした type属性の値がradioまたはcheckboxの場合、このBoolean属性の存在は、コントロールがデフォルトで選択されていることを示します。それ以外の場合は無視されます。
複数 HTML5複数のファイルまたは値を渡すことができることを示します( fileおよびemailタイプの入力にのみ適用されfile
プレースホルダ HTML5コントロールに入力できる内容をユーザーに示唆します。プレースホルダテキストに改行または改行を含めないでください
オートコンプリート HTML5コントロールの値をブラウザが自動的に完了できるかどうかを示します。
読み取り専用入力が編集可能でないことを示すブール値。読み取り専用コントロールは依然としてフォームの送信時に送信されますが、フォーカスは受信されません。 HTML5: type属性の値がhiddenrangecolorcheckboxradiofileまたはbuttonいずれかに設定されている場合、この属性は無視されbutton
必須 HTML5フォームが提出されるためには、値が存在する必要があること、または要素をチェックする必要があることを示します
alt イメージが表示されない場合の代替テキスト。
オートフォーカスページが読み込まれると<input>要素にフォーカスが得られるはずです。
<input>要素の値を指定します。
ステップ step属性は、有効な番号間隔を指定します。 numberrangedatedatetime-localmonthtimeweek入力タイプで動作しweek

備考

他のHTML5 void要素と同様に、 <input>は自己終了型であり、 <input />と書くことができます。 HTML5ではこのスラッシュは必要ありません。

HTMLで有効な入力タイプは次のとおりです。

5

以下は、HTML5標準の一部として新たに導入された入力タイプです。これらのタイプの一部は、すべてのWebブラウザでサポートされていません。型がサポートされていない場合、input要素はデフォルトでtext型になりtext

どのブラウザがどのタイプをサポートしているかを調べるには、 caniuse.comに行くことができます。

チェックボックスとラジオボタン

概要

チェックボックスとラジオボタンは<input>というHTMLタグで記述され、その動作はHTML仕様で定義されています

最も単純なチェックボックスまたはラジオボタンは、それぞれtype属性がcheckboxまたはradio <input>要素です。

<input type="checkbox">
<input type="radio">

単一のスタンドアローンのチェックボックス要素は、yes-or-noのような単一のバイナリオプションに使用されます。チェックボックスは独立しているため、ユーザーはチェックボックスのグループ内で好きなだけ多くの選択肢を選択できます。つまり、1つのチェックボックスをオンにしても、チェックボックスグループ内の他のチェックボックスのチェック解除されませ

ラジオボタンは通常、グループ内にあるすべてのボタンで同じname属性を使用して識別されるグループ(別のラジオボタンでグループ化されていない場合は、代わりにチェックボックスを使用することを意味します)で表示されます。ラジオボタンの選択は相互に排他的です 。つまり、ユーザはラジオボタンのグループから1つの選択肢のみを選択できます。ラジオボタンがチェックされると、以前にチェックされた同じname他のラジオボタンはチェックされなくなります。

例:

<input type="radio" name="color" id="red" value="#F00">
<input type="radio" name="color" id="green" value="#0F0">
<input type="radio" name="color" id="blue" value="#00F">

表示されると、ラジオボタンは円(チェックされていない)または塗りつぶされた円(チェックされている)として表示されます。チェックボックスは、四角形(チェックマークなし)または四角形(チェックマーク)として表示されます。ブラウザとオペレーティングシステムによっては、四角形の角が丸くなることがあります。

属性

チェックボックスとラジオボタンには、その動作を制御するための多数の属性があります。

value

他の入力要素と同様に、 value属性は、フォーム提出時にボタンに関連付ける文字列値を指定します。ただし、チェックボックスとラジオボタンは、値を省略しon場合、空白の値を送信するのではなく、送信時にデフォルトでonになるという点で特別です。 value属性は、ボタンの外観には反映されません。

checked

checked属性は、チェックボックスまたはラジオボタンの初期状態を指定します。これはブール値の属性であり省略することができます。

これらはそれぞれ、有効なラジオボタンを定義する同等の方法です。

<input checked>
<input checked="">
<input checked="checked">
<input checked="ChEcKeD">

checkedれていないボタンの唯一の有効な構文は、 checked属性がないことです。

<input type="radio">
<input type="checkbox">

<form>リセットすると、チェックボックスとラジオボタンがchecked属性の状態に戻ります。

アクセシビリティ

ラベル

ボタンにコンテキストを与え、各ボタンが何であるかをユーザに示すために、それぞれにラベルが必要です。これは<label>要素を使用してボタンをラップすることで行うことができます。また、ラベルをクリック可能にするので、対応するボタンを選択します。

例:

<label>
  <input type="radio" name="color" value="#F00">
  Red
</label>

またはfor属性がボタンのid属性に設定された<label>要素を使用しています。

<input type="checkbox" name="color" value="#F00" id="red">
<label for="red">Red</label>

ボタングループ

各ラジオボタンはグループ内の他のラジオボタンに影響するため、ラジオボタンのグループ全体にラベルまたはコンテキストを提供するのが一般的です。

グループ全体にラベルを付けるには、 <fieldset> <legend>要素内に<legend>要素を含むラジオボタンを含める必要があります。

例:

<fieldset>
  <legend>Theme color:</legend>
  <p>
    <input type="radio" name="color" id="red" value="#F00">
    <label for="red">Red</label>
  </p>
  <p>
    <input type="radio" name="color" id="green" value="#0F0">
    <label for="green">Green</label>
  </p>
  <p>
    <input type="radio" name="color" id="blue" value="#00F">
    <label for="blue">Blue</label>
  </p>
</fieldset>

チェックボックスは、関連するチェックボックスのグループを識別するフィールドセットと凡例と同様の方法でグループ化することもできます。ただし、チェックボックスは相互に排他的ではないため、同じ名前を共有しないようにしてください。これを行うと、同じキーに対して複数の値を送信するフォームが生成され、すべてのサーバー側言語が同じ方法でこれを処理するわけではありません(未定義の動作)。各チェックボックスには一意の名前を付けるか、角かっこ( [] )を使用して、そのキーの値の配列を送信する必要があることを示します。どちらの方法を選択するかは、フォームデータのクライアント側またはサーバー側の処理方法によって異なります。また、ブラウザとスクリーンリーダーの組み合わせによっては、フィールドセットの各入力フィールドの前に凡例が読み取られるため、凡例を短くしておく必要があります。

隠された

<input type="hidden" name="inputName" value="inputValue">  

非表示の入力はユーザーには表示されませんが、フォームが送信されたときにその値がサーバーに送信されます。

パスワード

<input type="password" name="password">

値がpasswordであるtype属性を持つinput要素は、 入力type=textと同様の単一行のテキストフィールドを作成しますが、ユーザーが入力するとテキストは表示されません。

<input type="password" name="password" placeholder="Password">

プレースホルダテキストはプレーンテキストで表示され、ユーザーが入力を開始すると自動的に上書きされます。

サンプルのパスワード入力フィールド

注意:ブラウザやシステムによっては、パスワードフィールドのデフォルト動作を変更して、直近に入力した文字を短時間表示することもできます。

表示される最後の文字の例

提出する

<input type="submit" value="Submit">

送信入力は、クリックされると内部にあるフォームを送信するボタンを作成します。

より簡単にスタイル設定することができる、または他の要素を含む送信ボタンが必要な場合は、 <button>要素を使用することもできます。

<button type="submit">
  <img src="submit-icon.jpg" /> Submit
</button>

ファイル

<input type="file" name="fileSubmission">

ファイル入力を使用すると、ローカルファイルシステムから現在のページで使用するファイルを選択できます。 form要素と組み合わせて使用​​すると、ユーザーはファイルをサーバーにアップロードできるようになります(詳細については、「 ファイルのアップロード」を参照)。

次の例では、ユーザーがfile入力を使用してfileシステムからファイルを選択し、そのファイルをupload_file.phpという名前のサーバー上のスクリプトにアップロードすることができupload_file.php

<form action="upload_file.php" method="post" enctype="multipart/form-data">
    Select file to upload:
    <input type="file" name="fileSubmission" id="fileSubmission">
    <input type="submit" value="Upload your file" name="submit">
</form>

複数のファイル

追加するmultipleユーザーが1つの以上のファイルを選択することができます属性を:

<input type="file" name="fileSubmission" id="fileSubmission" multiple>

ファイルを受け入れる

Accept属性は、ユーザーが選択できるファイルの種類を指定します。例: .png.gif.jpeg

<input type="file" name="fileSubmission" accept="image/x-png,image/gif,image/jpeg" />

入力検証

HTML入力の検証は、入力要素の特殊な属性に基づいてブラウザによって自動的に行われます。 JavaScriptの入力検証に部分的にまたは完全に置き換えることができます。この種の検証は、特別に細工されたHTTP要求を介してユーザーによって回避される可能性があるため、サーバー側の入力検証に代わるものではありません。検証は、フォームを送信しようとしたときにのみ発生するため、(JavaScriptを使用していない限り)検証が行われるように、すべての制限付き入力がフォーム内になければなりません。無効または読み取り専用の入力は検証をトリガーしません。

いくつかの新しい入力タイプ( emailurlteldateなど)は自動的に検証され、独自の検証制約は必要ありません。

5

必須

検証をパスするためにフィールドを完了する必要があることを示すには、 required属性を使用します。

<input required>

最小/最大長

長さの要件を示すには、 minlength属性とmaxlength属性を使用します。ほとんどのブラウザでは、ユーザーがボックスに最大文字数を超える文字を入力することを防ぎ、送信を試みる前でもエントリが無効にならないようにします。

<input minlength="3">
<input maxlength="15">
<input minlength="3" maxlength="15">

範囲の指定

minおよびmax属性を使用して、ユーザーがタイプnumberまたはrange入力に入力できる数値の範囲を制限する

Marks: <input type="number" size="6" name="marks" min="0" max="100" />
Subject Feedback: <input type="range" size="2" name="feedback" min="1" max="5" />
5

パターンに一致する

さらに制御するには、 pattern属性を使用して、検証を渡すために一致する必要がある正規表現を指定します。フィールドが合格しない場合は、検証メッセージに含まれるtitle指定することもできます。

<input pattern="\d*" title="Numbers only, please.">

このフィールドに無効な値を含むフォームを送信しようとすると、次のメッセージがGoogle Chromeバージョン51に表示されます。

要求されたフォーマットと一致してください。数字だけ、してください。

現代のブラウザーの中では完全にサポートされていますが、すべてのブラウザーで無効なパターンのメッセージが表示されるわけではありません。

CanIUseの最新サポートを確認し、それに応じて実装してください。

5

ファイルタイプを受け入れる

fileタイプの入力フィールドの場合、ビデオ、画像、オーディオ、特定のファイル拡張子、または特定のメディアタイプなど、特定のタイプのファイルのみを受け入れることができます 。例えば:

<input type="file" accept="image/*" title="Only images are allowed">

カンマで複数の値を指定することができます。例:

<input type="file" accept="image/*,.rar,application/zip">

注:追加novalidateに属性をform要素またはformnovalidate送信ボタンへの属性は、フォーム要素の検証を防ぐことができます。例えば:

<form>
    <input type="text" name="name" required>
    <input type="email" name="email" required>
    <input pattern="\d*" name="number" required>

    <input type="submit" value="Publish"> <!-- form will be validated -->
    <input type="submit" value="Save" formnovalidate> <!-- form will NOT be validated -->
</form>

フォームには、ドラフトを「公開」するために必要なフィールドがありますが、ドラフトを「保存」する必要はありません。

リセット

<input type="reset" value="Reset">

タイプresetの入力はボタンを作成します。このボタンはクリックされると、フォームに含まれるすべての入力をデフォルト状態にリセットします。

  • 入力フィールドのテキストは、空白またはデフォルト値( value属性を使用して指定)にリセットされます。
  • 選択メニューのオプションは、 selected属性がない限り選択解除selectedます。
  • すべてのチェックボックスとラジオボックスは、 checked属性がない限り、選択解除されます。

注:リセットボタンは、効果を出すために<form>要素の中にあるか、または( form属性を介して) <form>要素に付加されている必要があります。ボタンはこのフォーム内の要素のみをリセットします。

5
<input type="number" value="0" name="quantity">

値がnumberであるtype属性を持つInput要素は、要素の値を数値を表す文字列に設定するための正確なコントロールを表します。

このフィールドでは、正しい番号が付いているとは限りません。任意の実数で使用できるすべてのシンボルを許可します。たとえば、ユーザはe1e-,0ような値を入力できe1e-,0

電話番号

<input type="tel" value="+8400000000">

値がtelであるtype属性を持つinput要素は、電話番号を入力するための1行のプレーンテキスト編集コントロールを表します。

Eメール

5

<input type="email">は、電子メールアドレスを含む入力フィールドに使用されます。

<form>
  <label>E-mail: <label>
  <input type="email" name="email">
</form>

電子メールアドレスは、ブラウザのサポートによって送信時に自動的に検証されます。

ボタン

<input type="button" value="Button Text">

ボタンを使用して、フォームを送信せずにページ上でアクションをトリガすることができます。さらに簡単にスタイル設定することができたり、他の要素を含むボタンが必要な場合は、 <button>要素を使用することもできます。

<button type="button">Button Text</button>

ボタンは、通常、 "onclick"イベントで使用されます:

<input type="button" onclick="alert('hello world!')" value="Click Me">

または

<button type="button" onclick="alert('hello world!')">Click Me</button>

属性

[name]

フォームデータと共に送信されるボタンのname

[type]

ボタンのtype

可能な値は次のとおりです。

submit :ボタンはフォームデータをサーバーに送信します。これは、属性が指定されていない場合、または属性が空の値または無効な値に動的に変更された場合のデフォルトです。

reset :ボタンはすべてのコントロールを初期値にリセットします。

button :このボタンにはデフォルトの動作はありません。イベントの発生時にトリガされる、要素のイベントに関連付けられたクライアント側のスクリプトを持つことができます。

menu :このボタンは、指定された要素を介して定義されたポップアップメニューを開きます。

[value]

ボタンの初期値です。

5

送信ボタンの追加属性

属性説明
form ボタンが属するフォームのIDを指定します。
指定されていない場合は、その祖先フォーム要素(存在する場合)に属します。
formaction フォームデータの送信先を指定します。
このボタンを使用してフォームが送信されたとき。
formenctype フォームデータのエンコード方法を指定します。
このボタンを使用してサーバーに送信します。
formmethod="post"でのみ使用できます。
formmethod 使用するHTTPメソッド(POSTまたはGET)を指定します。
このボタンを使用してフォームデータを送信するとき
formnovalidate 送信時にフォームデータを検証しないことを指定します。
formtarget 受信した応答を表示する場所を指定します。
このボタンを使用してフォームを送信した後

5
<input type="color" name="favcolor" value="#ff0000">

サポートするブラウザでは、type属性の値がcolorであるinput要素は、 color属性の値と等しいcolorを持つボタンのようなコントロールを作成します(値が指定されていない場合はデフォルトは黒で、無効な16進形式です)。

ここに画像の説明を入力

このボタンをクリックすると、オペレーティングシステムのカラーウィジェットが開き、ユーザーはカラーを選択できます。

ここに画像の説明を入力

この入力タイプをサポートしていないブラウザのフォールバックは、通常の入力type=textです。

ここに画像の説明を入力

URL

5
<input type="url" name="Homepage">

これは、URLアドレスを含む入力フィールドに使用されます。

ブラウザのサポートによっては、 urlフィールドは送信時に自動的に検証されます。

いくつかのスマートフォンはurl種類を認識し、 ".com"をURLに一致させるためにキーボードに追加します。

日付

5
<input type="date" />

あなたが日付を選択するための日付ピッカーが画面上にポップアップ表示されます。 FirefoxまたはInternet Explorerではサポートされていません。

DateTime - ローカル

5
<input type="datetime-local" />

ブラウザのサポートに依存して、日付と時刻を選択するための日付と時刻の選択ツールが画面上にポップアップ表示されます。

画像

<input type="image" src="img.png" alt="image_name" height="50px" width="50px"/>

画像。代替テキストを定義するには、src属性を使用してイメージのソースを定義し、alt属性を使用する必要があります。 height属性とwidth属性を使用して、イメージのサイズをピクセル単位で定義することができます。

範囲

5
<input type="range" min="" max="" step="" />

正確な値が重要でない数値を入力するためのコントロール。

属性説明デフォルト値
範囲の最小値 0
最大範囲の最大値 100
ステップ増分ごとに増加する金額。 1

5
<input type="month" />

ブラウザのサポートに依存して、月を選択するコントロールが表示されます。

時間

5
<input type="time" />

time入力は、この要素を時間を表す文字列を受け入れるものとしてマークします。形式はRFC 3339で定義されおり、

19:04:39
08:20:39.04

現在、Android版Edge、Chrome、Opera、Chromeのすべてのバージョンでtype = "time"がサポートされています。 Android Browserの最新バージョン、特に4.4以降がサポートされています。 Safari for iOSは部分的なサポートを提供し、最小、最大、およびステップの属性をサポートしていません。

週間

5
<input type="week" />

ブラウザーのサポートに依存して、コントロールに週の年番号とタイムゾーンのない週番号を入力するためのコントロールが表示されます。

テキスト

最も基本的な入力タイプとtypeが指定されていない場合のデフォルト入力。この入力タイプは、改行が入力値から自動的に削除された単一行のテキストフィールドを定義します。それ以外の文字はすべてこれに入力できます。 <input>要素は、ユーザーがデータを入力できる入力コントロールを宣言するために<form>要素内で使用されます。

構文

<input type="text">

または( typeを指定せずに、default属性を使用して)

<input>

テキストフィールド入力のデフォルトの幅は20文字です。これは次のようにsize属性の値を指定することで変更できます:

<input type="text" size="50">

size属性は、CSSで幅を設定するのとはまったく異なります。幅を使用すると、入力が常にワイドでなければならない特定の値(ピクセル数、親要素の割合など)が定義されます。 sizeを使用すると、使用sizeれているフォントと通常の文字の幅に基づいて、割り当てる幅を計算します。

注: size属性を使用しても、ボックスに入力できる文字数は本質的に制限されず、ボックスの幅のみが制限されます。長さを制限する方法については、 入力の検証を参照してください。

入力フィールドは1行のテキストのみを許可します。大量のテキストに対して複数行のテキスト入力が必要な場合は、代わりに<textarea>要素を使用します。

サーチ

5

入力型検索は、テキスト検索に使用されます。ほとんどのブラウザでは、テキストのスペースの横に拡大記号が追加されます

<input type="search" name="googlesearch">

DateTime(グローバル)

valueが " datetime "のtype属性を持つinput要素は、要素の値をグローバルな日時(タイムゾーン情報付き)を表す文字列に設定するためのコントロールを表します。

<fieldset>
   <p><label>Meeting time: <input type=datetime name="meeting.start"></label>
</fieldset>

許可される属性:

  • グローバル属性
  • 無効
  • タイプ
  • オートコンプリート
  • オートフォーカス
  • リスト
  • 最小&最大
  • ステップ(浮動)
  • 読み取り専用
  • 必要な値


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow