趙健の技術ノート

ITコース HTML基礎 013_フォームとユーザー入力

学習 / HTML基礎 約5251文字 · 14分で読める - 回閲覧

フォーム

HTML フォーム(Form)は HTML の非常に重要な部分で、ユーザーが Web ページで情報を入力し、サーバーに送信することを可能にします。

例:

<form action="/submit" method="post">
<!-- フォーム要素はここに配置 -->
</form>

<form> 要素はユーザーがデータを入力する領域を定義し、テキストエリア <textarea>、ドロップダウンリスト <select>、ラジオボタン <radio>、チェックボックス <checkbox>、ボタン <button> など、さまざまな種類の入力要素を含めることができます。

フォーム属性:
  • action:フォームデータがサーバーに送信された後の処理ファイルの URL を定義します。
  • method:データをサーバーに送信する際に使用する HTTP メソッドを定義します。一般的な値は “get” と “post” です。
  • name:フォームの名前を指定するために使用します。フォーム名はフォームを識別し、サーバー側でフォームデータを処理する際に使用されます。
  • enctype:フォームデータのエンコード方式を指定するために使用します。フォームデータは application/x-www-form-urlencoded または multipart/form-data エンコード方式を使用できます。
  • autocomplete:フォームの自動補完機能を有効にするかどうかを指定するために使用します。on に設定すると、ブラウザは以前にフォームに入力したデータを自動的に入力します。
  • novalidate:フォームデータを検証するかどうかを指定するために使用します。on に設定すると、フォームデータは送信前に検証されません。

[!まとめ]

  • form フォーム自体は表示されません。

テキストフィールド

フォームでは、ユーザーに文字、数字などのテキストコンテンツを入力してもらう必要がよくあります。これは <input> 要素の type 属性を “text” に設定することで実現できます。

例:

<form>
名前: <input type="text" name="name"><br>
年齢: <input type="text" name="age">
</form>

効果:

例の効果

[!まとめ]

  • ほとんどのブラウザでは、テキストフィールドのデフォルト幅は 20 文字です。

パスワードフィールド

ユーザーにパスワードを入力してもらう必要がある場合は、<input> 要素の type 属性を “password” に設定すると、入力内容が非表示になります。

例:

<form>
パスワード: <input type="password" name="pwd">
</form>

効果:

例の効果

[!まとめ]

  • パスワードフィールドの文字はプレーンテキストでは表示されず、アスタリスク * またはドット . で置き換えられます。

ラジオボタン(Radio Buttons)

ラジオボタンとチェックボックスを使用すると、ユーザーは複数の選択肢から 1 つまたは複数を選択できます。ラジオボタンの type 属性値は “radio” です。

例:

<form action="">
性別:
<input type="radio" name="sex" value="male" checked>男性
<input type="radio" name="sex" value="female">女性
</form>

効果:

例の効果

[!まとめ]

  • ラジオボタンの name 属性値は同じでなければなりません。そうでないと、同じグループに属しません。
  • checked 属性は、ラジオボタンがデフォルトで選択されているかどうかを指定するために使用します。

チェックボックス(Checkboxes)

チェックボックスは 1 つまたは複数のオプションを選択でき、<input type="checkbox"> を使用して定義します。

例:

<form>
使用したことのあるアプリ:
<input type="checkbox" name="app" value="jd">JD
<input type="checkbox" name="app" value="wechat">WeChat
<input type="checkbox" name="app" value="qq">QQ
<input type="checkbox" name="app" value="douyin">TikTok
</form>

効果:

例の効果

[!まとめ]

  • checked 属性は、チェックボックスがデフォルトで選択されているかどうかを指定するために使用します。

ドロップダウンリスト(select)

ドロップダウンリストを使用すると、ユーザーは複数の選択肢から 1 つを選択できます。<select> 要素で作成し、<option> 要素でオプションを定義します。

例:

<form action="">
国を選択してください:
<select name="country">
<option value="china">中国</option>
<option value="us">アメリカ</option>
<option value="japan">日本</option>
</select>
</form>

効果:

例の効果

[!まとめ]

  • selected 属性は、ドロップダウンリストのデフォルトオプションを指定するために使用します。
  • disabled 属性は、ドロップダウンリストが使用可能かどうかを指定するために使用します。
  • size 属性を使用して、ドロップダウンリストで表示されるオプションの数を指定できます。

送信ボタン(Submit、Reset、Button)

フォームには通常、ユーザーの入力を送信または確認するためのボタンが必要です。submitresetbutton はすべて HTML のフォームボタン要素です。

タイプ属性機能使用シーン
submittype="submit"フォームデータの送信ログインフォームの送信、登録フォームの送信など
resettype="reset"フォームデータのリセット検索フォームのリセット、ショッピングカートのリセットなど
buttontype="button"なし通常は JavaScript と組み合わせて使用し、操作の実行、ページ遷移など
imagetype="image"画像をボタンとして使用操作の実行、ページ遷移など

例:

<form action="/submit" method="post">
<input type="submit" value="送信ボタン">
<input type="reset" value="リセットボタン">
<button type="button" value="確認ボタン">確認ボタン</button>
<input type="image" src="[zhaojian-avatar.png (1332×1332)](https://www.zhaojian.net/images/zhaojian-avatar.png)" alt="画像ボタン" width="50" height="50">
</form>

効果:

例の効果

[!まとめ]

  • post:HTTP POST メソッドを指し、フォームデータはフォーム本文に含まれてサーバーに送信されます。ユーザー名やパスワードなどの機密データの送信に使用されます。
  • get:デフォルト値で、HTTP GET メソッドを指します。フォームデータは action 属性の URL に ? を区切り文字として追加され、一般的にページネーションなどの機密性のない情報に使用されます。例:https://www.zhaojian.net/?page=1、ここで page=1 は get メソッドで送信されたデータです。

フォーム要素と属性

要素
タイプ
説明属性
formフォームフォームのコンテナ要素。フォームの名前、送信方法、送信先を指定します。nameactionmethodenctypeaccept-charsettargetautocompletenovalidate
input入力フォームで最も一般的に使用される要素。テキスト、数字、日付など、さまざまな種類のユーザー入力を受け付けることができます。typenamevalueplaceholderdisabledreadonlyautocompleterequiredpatternminmaxstep
textarea入力複数行のユーザー入力を受け付けるために使用します。namecolsrows
select選択ユーザーの選択を受け付けるために使用し、複数のオプションを含めることができます。namemultiplesize
option選択select 要素内で使用し、選択可能なオプションを定義します。valueselected
radio選択単一選択のユーザー入力を受け付けるために使用します。複数のラジオボタンを含めることができます。namevaluechecked
checkbox選択複数選択のユーザー入力を受け付けるために使用します。複数のチェックボックスを含めることができます。namevaluechecked
submitボタンフォームを送信するために使用します。value
resetボタンフォームをリセットするために使用します。value
buttonボタンボタンを作成するために使用します。フォームの送信、リセット、その他の操作の実行に使用できます。typenamevalue
labelラベル入力要素にラベルを提供するために使用します。ラベルはユーザーが入力要素の目的を理解するのに役立ちます。for
fieldsetグループ化フォーム要素をグループ化するために使用します。namelegend
legendタイトルfieldset 要素にタイトルを提供するために使用します。
optgroupグループ化オプションをグループ化するために使用します。label
共有:

コメント