フォーム要素 HTMLでフォームを作成します。 例: ラジオボタンの使用

HTMLフォームは、HTML ドキュメントが何らかの情報を外部の所定のポイントに送信し、そこで情報が何らかの方法で処理されるツールです。

HTML 専用のチュートリアルでフォームについて話すのは非常に困難です。 理由は非常に簡単です。HTML フォームの作成は、HTML フォームが情報を送信する「外界のポイント」を作成するよりもはるかに簡単です。 ほとんどの場合、そのような「ポイント」は Perl または C で書かれたプログラムです。

フォームによって送信されたデータを処理するプログラムは、CGI スクリプトと呼ばれることがよくあります。 CGI は Common Gateways Interface の頭字語です。 ほとんどの場合、CGI スクリプトを作成するには、適切なプログラミング言語と Unix オペレーティング システムの機能についての十分な知識が必要です。

現在、PHP/FI 言語はある程度普及しており、その命令を HTML ドキュメントに直接埋め込むことができます (ドキュメントは拡張子 *.pht または *.php のファイルとして保存されます)。

HTML フォームは、[変数名]=[変数値] のペアの形式でハンドラー プログラムに情報を渡します。 変数名はラテン文字で指定する必要があります。 変数値は、数値のみを含んでいる場合でも、ハンドラーによって文字列として扱われます。

HTML フォームの仕組み

フォームはタグで開かれます

そしてタグで終わります
。 HTML ドキュメントには複数のフォームを含めることができますが、フォームを複数のフォームの中に配置しないでください。 タグを含む HTML テキストは、制限なくフォーム内に配置できます。

鬼ごっこ

3 つの属性を含めることができ、そのうちの 1 つは必須です。 属性は次のとおりです。

必須の属性。 フォームハンドラーが配置される場所を決定します。

フォームからのデータをハンドラーに転送する方法 (つまり、どのハイパーテキスト転送プロトコル メソッドを使用するか) を決定します。 有効な値は METHOD=POST および METHOD=GET です。 属性値が設定されていない場合は、デフォルトで METHOD=GET が想定されます。

HTML フォームのデータをエンコードしてハンドラーに送信する方法を決定します。 属性値が設定されていない場合、デフォルトは ENCTYPE=application/x-www-form-urlencoded です。

最も単純な HTML フォーム

フォームからハンドラーにデータを転送するプロセスを開始するには、何らかの制御が必要です。 このようなコントロール本体の作成は非常に簡単です。

フォーム内でそのような行に遭遇すると、ブラウザは画面上に「送信」という文字のボタンを描画します(英語の「submit」から、2番目の音節に重点を置いて「submit」と読みます)。クリックすると、すべてのデータが利用可能になります。フォームはタグで定義されたハンドラーに転送されます .

属性 VALUE="[Label] を入力することで、ボタンのラベルを任意に設定できます。" (читается "вэлью" с ударением на первом слоге, от английского "значение"), например:!}

これで、単純な HTML フォームを作成するのに十分な知識が得られました (例 11)。 データは収集されませんが、この章の本文に戻るだけです。

例 11

最も単純な形式

ボタンに配置された碑文は、必要に応じて、ボタン定義に NAME=[name] 属性を導入することでハンドラーに渡すことができます (英語の「name」から「name」と読みます)。次に例を示します。

このようなボタンをクリックすると、ハンドラーは他のすべてのデータとともに、値「Let's go!」を持つボタン変数を受け取ります。 。

フォームには、異なる名前や値を持つ複数の送信ボタンを含めることができます。 したがって、ハンドラーは、ユーザーがクリックした送信ボタンに応じて異なる動作を行うことができます。

HTML フォームがデータを収集する方法

他の種類の要素もあります 。 各要素 要素の名前 (および、それに応じてハンドラーに渡される変数の名前) を指定する NAME=[name] 属性を含める必要があります。 名前を指定する必要があります ラテン文字のみ。 ほとんどのアイテム 属性 VALUE="[値] を含める必要があります" , определяющий значение, которое будет передано обработчику под этим именем. Для элементов !} そして ただし、対応する変数の値はユーザーがキーボードを使用して入力できるため、この属性はオプションです。

基本的な要素の種類 :

TYPE=テキスト

テキスト行を入力するためのウィンドウを定義します。 追加の属性 SIZE=[number] (文字単位の入力ウィンドウの幅) および MAXLENGTH=[number] (文字単位の入力文字列の最大許容長) を含めることができます。

例:

テキスト入力用に 20 文字幅のウィンドウを定義します。 デフォルトでは、ウィンドウには Ivan というテキストが含まれており、ユーザーはこれを編集できます。 編集された (または編集されていない) テキストは、ユーザー変数のハンドラーに渡されます。

TYPE=パスワード

パスワードを入力するためのウィンドウを定義します。 テキスト タイプとまったく同じですが、入力されたテキストの記号の代わりにアスタリスク (*) が画面上に表示されるだけです。 例:

パスワードを入力するための 20 文字幅のウィンドウを定義します。 許可されるパスワードの最大長は 10 文字です。 入力されたパスワードは、pw 変数でハンドラーに渡されます。

TYPE=ラジオ

ラジオボタンを定義します。 追加の selected 属性を含めることができます (ボタンがチェックされていることを示します)。 同じ名前のラジオ ボタンのグループ内では、ラベルの付いたラジオ ボタンは 1 つだけ存在できます。

例:

9600bps
14400bps
28800 bps

9600 bps、14400 bps、および 28800 bps というラベルの付いた 3 つのラジオ ボタンのグループを定義します。 最初のボタンには最初にラベルが付いています。 ユーザーが別のボタンをチェックしない場合、値 9600 を持つモデム変数がハンドラーに渡されます。 ユーザーが別のボタンをチェックすると、値 14400 または 28800 のモデム変数がハンドラーに渡されます。

TYPE=チェックボックス

マークを付けることができる正方形を定義します。 追加の selected 属性を含めることができます (正方形がチェックされていることを示します)。 ラジオ ボタンとは異なり、同じ名前の四角形のグループには複数のラベル付き四角形を含めることができます。

例:

パソコン
ワークステーション
ローカルネットワークサーバー
インターネットサーバー

4 つの正方形のグループを定義します。 2 番目と 4 番目の正方形には最初にマークが付けられます。 ユーザーが変更を加えなかった場合、 comp=WS と comp=IS という 2 つの変数がハンドラーに渡されます。

TYPE=非表示

フォームに入力するときにユーザーには表示されず、変更されずにハンドラーに渡される非表示のデータ要素を定義します。 ハンドラーがどのバージョンのフォームを扱っているかを認識できるように、時々再設計されるフォーム上にこのような要素があると便利な場合があります。 他の用途を自分で簡単に思いつくことができます。

例:

値 1.1 でハンドラーに渡される非表示のバージョン変数を定義します。

TYPE=リセット

クリックすると HTML フォームを元の状態に戻すボタンを定義します。 このボタンを使用するときはハンドラーにデータが渡されないため、リセット ボタンには name 属性がない場合があります。

例:

クリックすると HTML フォームを元の状態に戻す [フォーム フィールドのクリア] ボタンを定義します。

要素以外にも , HTML フォームにはメニューを含めることができます

すべての属性は必須です。 NAME 属性は、ウィンドウの内容がハンドラーに転送される名前を定義します (例ではアドレス)。 ROWS 属性は、ウィンドウの高さを行単位で設定します (この例では 5)。 COLS 属性は、ウィンドウの幅を文字単位で設定します (この例では 50)。

タグの間にテキストを配置 、ウィンドウのデフォルトの内容を表します。 ユーザーはそれを編集したり、単に消去したりできます。

ロシア語の文字がウィンドウに表示されていることを知っておくことが重要です

フィールドの内容がそのサイズを超えると、スライダーが表示されます。

フォームの使用例

次に、フォームがどのように機能するかを見てみましょう。

教育ビデオ注文フォーム:


あなたの名前: *



ご注文:



メディアを選択します:


CD


DVD


USBフラッシュ


あなたの電子メール: *



あなたの住所: *





説明

HTMLタグ

ユーザー入力をサーバーに送信するために使用される HTML フォームを作成します。

フォーム自体はユーザー入力の手段を提供していないため、要素内では ユーザーにデータを入力するためのさまざまな方法を提供することを目的とした他の要素が含まれています。

これらの要素に加えて、フォーム内で他の HTML 要素を使用できます。

デフォルトでは、フォームは Web ページ上にまったく表示されず、フォーム内にある要素のみが表示されますが、CSS を使用すると、フォームに任意の外観を与えることができます。

属性

accept-charset: 処理のためにサーバーに送信されるフォーム入力の文字エンコーディング、または文字セットのスペース区切りのリストを指定します。 指定されたエンコーディングでサポートされていない文字がデータに含まれている場合、ブラウザはそれらの文字に適切なエンコーディングを決定しようとします。 適切なエンコードが決定できない場合、文字は数値コードにエンコードされます。

デフォルト値は予約文字列「UNKNOWN」です(ブラウザはこの値を、その要素を含むドキュメントの文字エンコーディングと同じ文字エンコーディングとして解釈します) )。 action: 入力済みフォームからデータを送信するためのアドレスを示します。この情報はそこで処理されます。 autocomplete: フォームのオートコンプリートを有効にするか無効にするかを決定します。 自動入力が有効になっている場合、ブラウザーはユーザーが前回フォームを使用したときに入力した値を自動的に入力します。 可能な属性値:

  • の上:ブラウザには、ユーザーが以前に入力した値 (デフォルト値) が自動的に表示されます。
  • オフ:ユーザーはフォームを使用するたびに各フィールドに値を入力する必要があります。 以前に入力した値は表示されません。

注: オートコンプリート属性は Opera ブラウザではサポートされていません。

Enctype: サーバーに送信するときにフォーム データをエンコードする方法を指定します。 Method="post" 属性と組み合わせてのみ使用できます。 可能な値:

  • application/x-www-form-urlencoded:デフォルト: すべての文字は送信前にエンコードされます (スペースは「+」文字に変換され、特殊文字は ASCII HEX 値に変換されます)。
  • マルチパート/フォームデータ:文字はエンコードされません。 要素に使用されます 、その type 属性は「file」に設定されます。
  • テキスト/プレーン:スペースは「+」文字に変換されますが、アポストロフィなどの特殊文字は 16 進値にエンコードされません。
Method: フォーム データを送信するときに使用される HTTP データ転送メソッドを指定します。 可能な値:
  • 得る:データは、名前=値のペアとして URL の末尾に追加されてブラウザのアドレス バーに渡されます。 疑問符 (?) はメイン URL と送信データの間の区切り文字として使用され、アンパサンド文字 (&) は送信データを互いに区切るために使用されます。 この方法は、小さなデータを送信するときに使用されます。
  • 役職:データは URL の一部としてではなく、ブラウザー要求のコンテンツとして送信されます。 この方法は、大量のデータを送信するために使用されます。
Method 属性が指定されていない場合は、デフォルトで GET メソッドが使用されます。 name: フォームの名前を指定します。 この名前は、JavaScript で要素を名前で参照したり、送信後のフォーム データを参照したりするために使用できます。 1 つの文書で複数のフォームが使用されている場合、その名前を繰り返してはならず、属性値として空の文字列を残すべきではありません。 novalidate: フォームに入力されたデータが送信前に検証されないことを示します。 novalidate boolean 属性の可能な値:

注: novalidate 属性は、IE9 以前および Safari ではサポートされていません。

ターゲット: フォームの送信後に受信した応答を表示する場所を指定するフレーム名またはキーワードを定義します。

  • _空白:新しいウィンドウまたはタブでドキュメントを開きます。
  • _自己:リンクが配置されているのと同じディレクトリでドキュメントを開きます (デフォルト)。
  • _親:親フレームでドキュメントを開きます。
  • _上:ドキュメントをウィンドウの全幅で開きます。
  • フレーム名:名前が値として指定された iframe でドキュメントを開きます。

鬼ごっこ グローバル属性とイベントもサポートします

デフォルトのスタイル

フォーム (表示: ブロック; マージン上部: 0em; )

名前:
姓:

フォームは、ユーザーから Web サーバーにデータを送信するように設計されています。 HTML のフォームは、テキスト フィールドとテキスト領域、チェックボックスとラジオ ボタン、ドロップダウン リストで構成できます。 これらはすべて形式の要素です。 各要素はサイトに何らかの意味を伝える役割を果たします。
HTML フォームの中核は、情報を入力するための領域が表示される Web ページです。 フォームに記入して「送信」をクリックすると、フォームからの情報がパッケージ化されて Web サーバーに送信され、サーバー側のスクリプト (ハンドラー ファイル) によって処理されます。 処理後、別の Web ページが応答として返されます。 次の図は、フォームがどのように機能するかを明確に示しています。

HTML フォームの作成に難しいことは何もありません。 フォームについて理解する最も簡単な方法は、HTML コードを少し解析して、それがどのように機能するかを確認することです。 次の例は、単純な HTML フォームを作成するための構文を示しています。

例: 単純な HTML フォーム

  • 自分で試してみてください」

私の最初のフォーム:
名前:
姓:



シンプルなフォルム

私の最初のフォーム:
名前:
姓:


要素

フォームは、要素を使用して Web ページに挿入されます。 。 これは、テキスト フィールドやボタン、その他の HTML タグなどの要素を含む、すべてのフォーム コンテンツのコンテナを提供します。 ただし、別の要素を含めることはできません .
フォームをサーバーに送信するには、「送信」ボタンを使用します。フォーム内で「Enter」キーを押しても、同じ結果が得られます。 フォームに「送信」ボタンがない場合は、「Enter」キーを使用して送信できます。
ほとんどの要素の属性 フォームのデザインではなく処理に影響します。 最も一般的なのは、 アクションそして 方法。 属性 アクションサーバーによる処理のためにフォーム内の情報が送信される URL が含まれます。 属性 方法ブラウザがフォーム データを送信するために使用する必要がある HTTP メソッドです。

要素

ほとんどすべてのフォームフィールドは要素を使用して作成されます。 (英語の入力 - 入力から)。 要素の外観 属性の値に応じて変化します タイプ:

以下にいくつかの属性値を示します タイプ:

テキストとパスワードを入力する

フォーム要素の最も単純なタイプの 1 つはテキスト フィールドで、テキストを 1 行に入力するように設計されています。 このテキスト入力タイプはデフォルトで設定されているため、属性の指定を忘れた場合に表示される 1 行フィールドです。 タイプ。 フォームに 1 行のテキスト入力フィールドを追加するには、要素内に次のようにする必要があります。 属性を登録する タイプテキスト値の場合:

パスワード入力フィールドは、通常のテキスト フィールドの一種です。 単一行のテキスト フィールドと同じ属性がサポートされます。 属性 名前ユーザーが入力したパスワードとともにサーバーに送信されるパスワード入力フィールドの名前を設定します。 パスワードフィールドを作成するには、パスワード属性を次のように設定する必要があります。 タイプ(パスワード(英語) - パスワード):

パスワードフィールドを含むフォームの作成例:

例: パスワードフィールド

  • 自分で試してみてください」

あなたのログイン:

パスワード:




あなたのログイン:

パスワード:


この属性と組み合わせて使用​​できます。 最大長の値によって、特定の文字列に入力できる最大文字数が決まります。 属性を使用して入力フィールドの長さを設定することもできます。 サイズ。 デフォルトでは、ほとんどのブラウザではテキスト フィールドの幅が 20 文字に制限されています。 属性の代わりに新しいフォームの要素の幅を制御するには サイズ、カスケード スタイル シート (CSS) の使用をお勧めします。
属性 価値フォームがロードされたときにテキストフィールドにデフォルトで表示される値を指定します。 フィールドにデフォルト値を入力すると、ユーザーがここにどのようなデータをどの形式で入力するかを正確に説明できます。 これはサンプルのようなものです。ユーザーは目の前で例を見ながらフォームに記入する方がはるかに便利です。

スイッチ(無線機)

要素 タイプ 無線論理「OR」原理を使用するスイッチを作成し、複数の値のうち 1 つだけを選択できるようにします。1 つの位置を選択すると、他の値はすべて非アクティブになります。 トグル要素の基本構文は次のとおりです。

属性 名前 for switch は必須であり、複数のスイッチ要素を 1 つのグループに結合する際に重要な役割を果たします。 ラジオ ボタンをグループに結合するには、同じ属性値を設定する必要があります 名前と異なる属性値 価値。 属性 価値選択したラジオ ボタンの値をサーバーに送信するように設定します。 ユーザーが選択した応答オプションをサーバーが認識できるように、各ラジオ ボタン要素の値はグループ内で一意である必要があります。
属性の存在 チェック済み switch 要素の (英語から - インストール済み) は、必要に応じてページを読み込むときに、提案されたオプションのどれをデフォルトで選択する必要があるかを示します。 この属性は、グループ内の 1 つのラジオ ボタン要素に対してのみ設定できます。

  • 自分で試してみてください」

何歳ですか?

  1. 18歳以下
  2. 18時から24時まで
  3. 25から35まで
  4. 35以上




何歳ですか?

  1. 18歳以下
  2. 18時から24時まで
  3. 25から35まで
  4. 35以上

チェックボックス

要素 タイプ チェックボックス提供するオプションからユーザーが選択できるという点で、ラジオ ボタンに似たチェックボックスを作成します。 ラジオ ボタンとの主な違いは、訪問者が一度に複数のオプションを選択できることと、チェックボックス自体が円ではなく四角で示されることです。 ラジオ ボタンと同様に、各項目に同じ属性値を割り当てることでチェックボックスのグループが作成されます。 名前ただし、各チェックボックスには独自の意味があります。 チェックボックスの基本的な構文は次のとおりです。

属性 チェック済みは、ラジオ ボタンと同様に、ページの読み込み時にデフォルトでチェックボックスがオンになるように指定します。 この属性は、複数のグループのチェックボックスに対して同時に設定できます。
次のチェックボックスの使用例には、デフォルトの回答の選択肢がいくつかあります。

例: ラジオボタンの使用

  • 自分で試してみてください」
  1. ジャズ
  2. ブルース
  3. ロック
  4. シャンソン




どのようなジャンルの音楽が好きですか?

  1. ジャズ
  2. ブルース
  3. ロック
  4. シャンソン

確認(送信)ボタンとクリア(リセット)ボタン

要素 タイプ 提出するボタンが作成され、クリックされるとブラウザがサーバー スクリプトに送信され、ユーザーがフォームに入力したデータが処理されます。 フォームをクリアするボタンを作成する場合、属性を割り当てます。 タイプ「リセット」値。 要素 タイプ 提出するオプションの属性を割り当てることができます 名前。 属性 価値この要素でボタンのラベルを示すテキストを指定するために使用されます。 デフォルトでは、ブラウザのボタンには「送信」と書かれていますが、このテキストに満足できない場合は、自分で入力してください。 確認ボタンのスタイルはブラウザによって異なる場合があるため、CSS ツールを使用してボタンのスタイルを自分でカスタマイズするか、グラフィカル ボタンを使用することをお勧めします。
確認ボタンとクリアボタンの作成:

例: 送信とリセットの使用

  • 自分で試してみてください」

「リセット」ボタンをクリックすると、ユーザーが入力したデータがリセットされます。





アクション属性。

要素のメイン

属性です アクション、フォームのデータ ハンドラーを指定します。 データ ハンドラーは、フォーム データの処理方法を記述したファイルです。 この処理の結果、新しい HTML ページがブラウザに返されます。 つまり、属性では アクションフォームを処理するためのサーバー上のハンドラー ファイル (スクリプト ページと呼ばれることもあります) への URL パスを指定します。 構文は次のとおりです。

処理ファイルはサーバー上にあります mytestserver.comフォルダ内 ネームフォルダーおよびデータを処理するサーバー スクリプトの名前 - オブラボチク.php。 Web ページ上のフォームに入力したすべてのデータが彼に転送されます。 .php 拡張子は、指定されたフォームが PHP で記述されたスクリプトによって処理されることを示します。 ハンドラー自体は別の言語で作成できます。たとえば、Python、Ruby などのスクリプト言語を使用できます。
常に属性値を設定することをお勧めします。 アクション。 フォームが配置されている同じページに値を渡す必要がある場合は、action 属性の値として空の文字列を指定します: action=""。

メソッド属性

属性 方法情報をサーバーに転送する方法を指定します。 選択するフォーム送信方法は、フォームで送信するデータによって異なります。 ここでは、このデータの量が大きな役割を果たします。 最も一般的なのは、フォーム ソース データをブラウザからサーバーに転送する 2 つの方法です。 得るそして 役職。 メソッドは任意に設定できます。指定しない場合はデフォルトが使用されます。 得る。 それぞれの使い方を考えてみましょう。

POSTメソッド

方法 役職データはメッセージの本文に含まれているため、ユーザーが気付かないうちにデータをパッケージ化してサーバーに送信します。 Webブラウザ(メソッド使用時) 役職特別なヘッダーとそれに続くフォーム データで構成されるリクエストをサーバーに送信します。 このリクエストの内容はサーバーのみが利用できるため、メソッドは 役職パスワード、銀行カードの詳細、ユーザーのその他の個人情報などの機密データを送信するために使用されます。 方法 役職とは異なり、大量の情報を送信するのにも適しています。 得る、送信文字数に制限はありません。

GETメソッド

すでにご存知のとおり、ブラウザの主な仕事はサーバーから Web ページを受信することです。 したがって、このメソッドを使用すると、 得るの場合、ブラウザはいつものように Web ページを取得するだけです。 方法 得るフォーム データもラップしますが、リクエストをサーバーに送信する前に URL の末尾に追加します。 メソッドがどのように機能するかを理解するには 得る、実際に見てみましょう。 このレッスンの最初の例 (例: 単純な HTML フォーム) をメモ帳 (Notepad++ など) で開き、HTML コードに少し変更を加えます。

それらの。 交換する 役職の上 得る.
という名前でファイルを保存します ファイル名.htmlブラウザ ページを更新し (F5)、フォームに次のように入力します。 ヴァシャ・パプキンを選択し、「送信」ボタンをクリックします。 ブラウザのアドレス バーに次のような内容が表示されます。

File_name.html?firstname=Vasya&lastname=パプキン

これで、各フォーム要素の名前とその値が URL 内に表示されるようになります。
URL は疑問符でフォーム データの残りの部分から区切られ、変数名と値はアンパサンドで区切られます。 (&) .
大量の情報を転送しない場合は、この方法を使用する必要があります。
銀行カード番号やパスワードを保存するなど、フォーム内のデータが機密性の高い場合、この方法は機能しません。
また、その方法は、 得るフォームと一緒にファイルをサーバーに送信する場合には適していません。

フォーム要素のグループ化

意味に関連するフォーム要素をタグ間でグループ化できます。

そして
。 ブラウザが表示されます
フォーム要素のグループを囲むフレームの形式。 フレームの外観は、カスケード スタイル シート (CSS) を使用して変更できます。
各グループにタイトルを追加するには、要素が必要です 、フレームに埋め込まれるグループ タイトル テキストを指定します。

トピックの続き:
スマートフォン

モスクワ地域政府 決議 人員レベルの確立とモスクワ地域投資イノベーション省規則の承認に関する文書...

新しい記事
/
人気のある