formenctype属性

input要素のformenctype属性は、送信データのエンコード・タイプを指定する属性。

ブラウザ対応

構文

<input formenctype="エンコード・タイプ">

エンコード・タイプ

  • application/x-www-form-urlencoded: 全ての文字をURLエンコードする。初期設定値。
  • multipart/form-data: フォームにファイルを送信する機能がある場合に指定する。
  • text/plain: スペースだけ「+」記号に変換する。その他の特殊文字はエンコードしない。

要点

  • formenctype属性は、送信データのエンコード・タイプを指定する属性である。
  • form要素method属性postのときだけ使う。
  • input要素のformenctype属性に指定したエンコード・タイプは、input要素が所属するform要素enctype属性に指定したエンコード・タイプよりも優先される。
  • formenctype属性は、HTML5にて新たに導入された属性である。

formenctype属性に対応しているinput要素のタイプ(type属性値)

サンプルコード

送信ボタン

<p><input type="submit" value="送信" formenctype="application/x-www-form-urlencoded"></p>

画像ボタン

<p><input type="image" src="sample.png" alt="送信" formenctype="application/x-www-form-urlencoded"></p>

サンプル

HTMLソースコード

<form action="sample-input.php" method="post" target="_blank">
	<p>
		<label>
			1行テキスト入力欄:
			<input name="sampleName">
		</label>
	</p>
	<p>
		送信ボタン: <input type="submit" formenctype="application/x-www-form-urlencoded">
	</p>
	<p>
		画像ボタン: <input type="image" src="input-type-image.png" formenctype="application/x-www-form-urlencoded">
	</p>
</form>

実際の表示

送信ボタン:

画像ボタン: