フォームHTMLのセット。 HTML フォーム。 複数行のテキストフィールド - タグ

ブログ サイトの読者の皆さん、こんにちは。 研究を続けて、フォームとその属性 () を備えた入力タグについて検討します。これを使用すると、サイトにさまざまなフォームを作成できます。

特定の Web リソースのトピックやコンテンツが何であれ、テキスト フィールド、ドロップダウン メニュー、さまざまなボタンやスイッチなどのフォームが含まれる可能性が高くなります。 ところで、私はすでに出版物の1つで、フォームの多様化に役立つ要素について話しました。

考えられるさまざまな形式の実際的な目的は何でしょうか? まず、特別に作成されたスクリプト (ハンドラー) を使用してさらに処理するために、ユーザーが入力したデータをサーバーに送信するために必要です。

HTML フォーム - フォームと入力を使用してフォームがどのように作成されるか

冒頭で述べたように、多かれ少なかれ開発された Web サイトには、何らかの Web フォーム、または同時に複数の Web フォームが存在する必要があります。 Web リソースが最新の要件に準拠しているという観点から、それらがどれほど重要であるかを理解するには、form タグと input タグに基づいてフォームを使用する 3 つのオブジェクトをざっと挙げるだけで十分です。これらのオブジェクトは、その名前だけで、何らかの方向性のプロジェクトの必要性:

たとえば、フィードバックの作成に関する記事 (すべてのユーザーがサイト管理者にメッセージを送信できるようにする) へのリンクをたどると、開口部 (

) と終了 (
) 一部:


ここで、Web フォームのインストールを開始するフォームが重要な役割を果たします。 それ自体は Web ページ上の領域を表示しませんが、他のタグを含むコンテナとして機能します。

私たちの場合 (上のスクリーンショットを参照)、これらにはいくつかのものが含まれます。 入力(この HTML タグは単一です。つまり、終了コンポーネントがありません)、また テキストエリア、さまざまな属性セットを持ちます。 それぞれが、フォームに含まれる独自の要素を定義します。

16. オートフォーカス(パラメーターなし) は、Web ページが読み込まれるとすぐにフィールドにフォーカスを設定する論理属性です。その結果、フィールドをクリックせずにデータを入力できます。 input type="hidden" のみには適用できません。

17. 無効(値なし) - 追加されたフォーム要素をユーザーに対して無効にします。 ほとんどの場合、スクリプトと組み合わせて使用​​され、アクセスできない要素がアクティブになる条件が指定されます。

18. 形状— 要素がコンテナの外にある場合、要素をフォームに関連付けます

。 リンクするには、form タグにグローバル id 属性を追加し、input タグに form 属性を追加します。その値は同じです (例: id="data" と form="data")。 。

19. 複数(パラメータなし) - セット 多肢選択オプションユーザー用であり、type="file" および type="email" と組み合わせてのみ使用されます。

ファイル アップロード フィールドを使用する場合は、Ctrl キーまたは Shift キーを使用して、コンピュータから複数のファイルを一度に選択できます。 電子メール アドレスを入力するフィールドが表示される場合 (type="email")、電子メールをカンマで区切って入力する必要があります。

20. 必須(値なし) – ユーザーによるデータ入力の要件を有効にします。 したがって、必須フィールドが空のままの場合、ブラウザは Web フォームの送信をブロックし、フィールドに入力する必要があることを示す対応するメッセージを表示します。

この属性は、グラフィック ボタンや標準ボタン (type="button | image")、および非表示の入力フィールド (type="hidden") には使用されません。

21. サイズ— テキスト フィールドの幅を文字数で決定します (パラメータ「電子メール | パスワード | 検索 | 電話 | テキスト | URL」を持つタイプ要素にのみ適しています)。 デフォルト値は20文字です.

input タグの次の 4 つの属性 (22 ~ 25) は、 とほぼ同じ機能を持ちますが、完全を期すために、それらについても簡単に説明します。

22. 最大長— テキストフィールドに入力するときに入力できる最大文字数に制限を課します。 この制限を超えようとすると、それ以上の入力はブロックされます。 この属性は、type="電子メール | パスワード | 検索 | 電話番号 | テキスト | URL" のテキスト要素にのみ適用されます。

23. 最小長さ— テキスト領域に入力する必要がある最小文字数に制限を課します。 少ない文字数のデータを送信しようとすると、フォームの内容を補足する必要があることを示す短いメッセージが表示され、入力済みの文字数が表示されます。 利用規約はmaxlengthの場合と全く同じです。

24. プレースホルダー— ヒント (パラメーターとして機能します) をテキスト フィールドに直接配置できます。ヒントは、ユーザーが文字を入力し始めるとすぐに消えます。 パラメータを使用して形成されたフィールドのみ 電子メール、パスワード、検索、テキスト、電話番号、URL inputタグのtype属性。

25. 読み取り専用(パラメーターなし) - フィールドに以前に入力されたテキストが読み取りとコピーのみに使用できることを示します。 通常、これはスクリプトと組み合わせて使用​​され、条件が満たされた場合にこのフォーム要素をアクティブ化できるように指定されます。

最後に、さまざまなフォーム要素の機能を補完する属性をさらにいくつか紹介します。

26. パターン— その値として、情報入力ルールの設定に基づいて正規表現が反映されます。 この場合、グローバル タイトル属性を追加することをお勧めします。この属性のパラメータとして、ユーザーがフィールドに入力するのに役立つ説明テキストを追加できます。 パターンは、電子メール、パスワード、検索、テキスト、電話番号、URL 要素にのみ適用されます。 例を挙げて理解しましょう。 簡略化された登録フォーム ( 付き) のコードは次のとおりです。

ログイン

パスワード

ログイン

パスワード

ログイン フィールド (type="text") には、正規表現 (5,) がパターン値として指定されており、ラテン文字の使用を暗示しており、少なくとも 5 文字を入力する必要があります。

パスワードのテキスト領域 (type="password") に関しては、値は (8,) に設定されます。これは、数字だけでなく、大文字と小文字のラテン文字のみを入力することを指定します。すべての文字の合計数は 8 つ以上でなければなりません。

指定された入力条件に違反すると、ブラウザーはデータの送信を許可せず、適切な警告を表示します。


27. 送信元— グラフィック ボタン「イメージ」を表示するためのイメージへのパス (URL、その値) を定義します (上記の入力タイプ パラメーターの表を参照)。

28. ステップ— 数値の選択肢を提供する要素のステップを設定します (input type="date | datetime-local | month |number | range | tel | time | week.")。

任意の整数または小数をパラメータとして受け取ることができます。 デフォルトのステップ = "1"。 最終的な入力範囲を設定するには、前述の min 属性と max 属性を再度使用します。 わかりやすくするために、テスト フォームには 2 つの要素 type="number" を含めます。 最初の場合は step="2" を設定し、2 番目の場合は step="0,1" を設定します。

0 から 1 までの値を入力します。

-10 ~ 10 の値を入力します。

0 から 1 までの値を入力します。

29. 価値— ハンドラーに渡されるフォーム要素の値を設定します。 名前とパラメーターのペアがサーバーに送信され、名前は input タグの name 属性によって決定され、パラメーターは value 属性によって決定されます。 さらに、さまざまなフォーム要素に対して 値はさまざまな役割を果たします:

  • type="button |reset |submit" の場合 - ボタンにテキスト ラベルを設定します。
  • for type="checkbox | radio | image" - サーバー上でデータを送信および処理するときに、各チェックボックス、スイッチ、またはグラフィック ボタンを識別します。
  • type="password | text" の場合 - フォームを読み込むとすぐにフィールドに予備テキストが表示されますが、ユーザーはこれを変更したり完全に削除したりできます。
  • for type="file" (ファイルのアップロード) は、この要素に影響しないため、適用されません。

上記の各オプションの使用例:

CMS を選択します。 W.P. ジョームラ

CMS を選択します。 W.P. ジョームラ

ここ 値の属性値各要素の次のコンポーネントを定義します。フィールド type="text" (「あなたの名前」) のテキスト フラグメントを表示し、type="radio" を使用して設定された各ラジオ ボタン (「1」および「2」) を識別します。また、ボタン (「送信」) の碑文もアクティブ化します。

美しい HTML フォームの作成例

次に、サンプル Web フォームを紹介します。そのコードには、標準のテキスト フィールドとボタンを形成するさまざまな値を持つ入力タイプの組み合わせだけでなく、たとえば、次のことに焦点を当て始めることができます。マウスを直接クリックするだけでなく、テキストをクリックすることによっても要素を追加できます。

独自のデザインを取得するために、個別のフォーム コンポーネントが次のセットで配置されることに注意してください。

戻る (最大幅:350px; マージン:50px 自動 0; パディング:20px; 背景:#f3ebe1; font-family:"Oswald", sans-serif;) .form-1、.form-2、.form-3 、.form-4 (padding:15px; border:4px double #909090) .form-1、.form-2、.form-3 (border-bottom:none) .form-1 input (display:block; margin- Bottom:10px; width:100%).in (padding-left:40px) .in input (width:100%) ..png) no-repeat;background-position:10px 10px) ..png) no-repeat;背景位置:10px 10px) .form-4 input (表示:ブロック; 高さ:50px; フォントサイズ:24px; 幅:100%; カーソル:ポインタ)

その結果、このような Web フォームは次のような概要になります。

この特定のフォームの作成に関する詳細については、次の URL を参照してください。 このページ(ちなみに、そこではデータを入力して個々のテキスト領域の機能をテストできるだけでなく、HTML コードや CSS プロパティを編集して Web フォームの外観を完全または部分的に変更して実験することもできます)。

私の目標は、type 属性と form タグのさまざまな値を使用してサイト上にさまざまな HTML フォームを作成するためのアルゴリズムを紹介することでした。 任務が完了することを願っています。 いずれにせよ、この多様なトピックについてコメントであなたの考えを共有してください。

当然のことながら、今後の出版物でも引き続きハイパーテキスト マークアップの主要なタグについて説明していきますので、電子メールでブログの更新を購読することを忘れないでください。 また、これを強化するために、問い合わせフォームの作成に関する Evgeniy Popov による別のレッスンを見てください。

説明

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 サイト内を移動するとき、ユーザーはほとんどの場合、単にクリックするだけです。 リンク Web ページをナビゲートします。

ただし、ユーザーが独自のファイルを提供する必要がある場合があることは明らかです。 入力フィールド。 これらの種類の対話には次のようなものがあります。

  • ウェブサイトでの登録とログイン。
  • 個人情報(氏名、住所、クレジットカード情報など)の入力。
  • コンテンツのフィルタリング (ドロップダウン リスト、チェックボックスなどを使用)。
  • 検索を実行する。
  • ファイルをダウンロードしています。

これらのニーズに対応するために、HTML はインタラクティブな機能を提供します。 コントロールフォーム:

  • テキストフィールド (1 行以上);
  • スイッチ。
  • チェックボックス;
  • ドロップダウン リスト。
  • ダウンロード用のウィジェット。
  • 送信ボタン。

これらのコントロールにはさまざまな機能が含まれます タグ HTML ですが、ほとんどは タグを使用します 。 これは自己終了要素であるため、フィールドの型はその type 属性によって決まります。

要素

を定義するブロック要素です。 相互の作用 Web ページの一部。 その結果、すべてのコントロール ( ,






タグ、属性、値

  • action="http://site/comments.php" - フォームからのデータの送信先となる URL を定義します。
  • id="" - フォーム要素の名前と識別子を定義します。
  • name="" - フォーム要素の名前を定義します。
  • - フォームの一部としてテキストフィールドを定義します。
  • Cols="" - フォームのテキストフィールドの列数を決定します。
  • rows="" - フォームのテキストフィールドの行数を定義します。

間の場合 テキストを配置すると、簡単に削除できる例としてフィールド内に表示されます。

HTML フォームの例 | ドロップダウンリスト

HTMLフォーム




タグ、属性、値

  • - 選択する位置を含むリストを定義します。
  • size="" - 表示されるリストの位置の数を決定します。 値が 1 の場合、ドロップダウン リストを扱います。
  • - リストの位置 (項目) を決定します。
  • value="" - 処理のためにフォームによって指定された URL に送信される値が含まれます。
  • selected="selected" - 例としてリスト項目を強調表示します。

HTML フォームの例 | スクロールバー付きリスト

size="" 属性の値を増やすと、スクロール バー付きのリストが表示されます。

1 番目の位置 2 番目の位置 3 番目の位置 4 番目の位置

HTMLフォーム




このオプションでは、multiple="multiple" フラグを使用します。これにより、複数の位置を選択できるようになります。 これが存在しない場合は、項目を 1 つだけ選択できます。

  • type="submit" - ボタンを定義します。
  • type="reset" - リセット ボタンを定義します。
  • value="" - ボタンのラベルを定義します。
  • さらに以下を参照してください。

    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)。

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

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