備忘録的プログラミングリファレンス

<form>

 <form>は、サーバーへのデータ送信のためのエレメントです。
 データの入力は<input><select><textarea><button>によって受け付けます。
 サーバーごとや送信するデータの内容ごとによって <form> を作成します。

 <form>にはサーバーにデータを送る手段を指定します。 入力内容は<input>,<select>,<textarea>といった<form>部品を使います。 <form>部品の概要は以下です。

  • <input>... テキスト(改行を含まない)、数値、日時、送信ボタンなど
  • <select>... 一覧から選択入力
  • <textarea>... 改行を含むテキスト

 その他に汎用のボタン<button>、項目名を付ける<label>といった<form>部品があります。

 <form>内を内容ごとに分けるには<fieldset>を使います。 <fieldset>にはdisabled属性があります。disabledが指定された<fieldset>内の内容はサーバーに送信されません。

 データの送信はスクリプトでもできます。スクリプトでは非同期通信が可能で、javascriptではajaxとも呼ばれていますが、サーバー側で非同期に対応する必要があります。

属性

 グローバル属性も持ちます。以下に主な属性のみを示します。

AttributeValueExtra information
name*必須。タグエレメントを特定するための属性です。
idcssにも使えます。エレメントをユニークとします。
classcssに使います。同名のclassは同じスタイルが適応されます。
action送信先のURL(例:cgi-bin/***.cgi)です。
method データの送信形式
enctype エンコード形式(送信するデータのmimeタイプ)

ボタンの追加

submitボタン
作成する 作成しない
"

methodについて

 postがdefaultです。データを隠すことができます。ファイルのアップロードではpostを使います。
 getはURLに追記する形で送信。内容が丸見えになります。

enctypeについて

 application/x-www-form-urlencodedがdefaultです。URLエンコードします。
 multipart/form-dataはファイルのアップロード用です。サーバー側にもファイルを受け付けられるようにする必要があります。
 text/plainはスペースが+に置き換わるだけでURLエンコードなしです。